Goal Programming Presentations

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 26

Example 9.

Goal Programming

Background Information

The Leon Burnit Ad Agency is trying to determine a


TV advertising schedule for a client.

The client has three goals (listed here in descending


order of importance). It wants its ads to be seen by
Goal 1: at least 65 million high-income men (HIM)
Goal 2: at least 72 million high-income women (HIW)
Goal 3: at least 70 million low-income people (LP)

Burnit can purchase several types of TV ads, ads


shown on live sports shows, on game shows, on
news shows, on sitcoms, on dramas, and on soap
operas.
9.2 | 9.3 | 9.4

Background Information -continued

At most $700,000 total can be spent on ads.

The advertising costs and potential audiences of a 1minute ad of each type are shown in this table.
Data for Advertising Example
AdType

HIM

LIP

HIW

Cost

Sports Show

$120,000

Game Show

$40,000

News

$50,000

Sitcom

$40,000

Drama

$60,000

Soap Opera

$40,000

9.2 | 9.3 | 9.4

Background Information -continued

As a matter of policy, the client requires that at least


two ads be placed on sports shows, on news shows,
and on dramas.

Also, it requires that no more than ten ads be placed


on any single type of show.

Burnit wants to find the advertising plan that best


meets its clients goals.

9.2 | 9.3 | 9.4

Solution

First, we build a spreadsheet model to see whether


all of the goals can be met simultaneously.

In the spreadsheet model we must keep track of


following:
The number of sports and soap opera ads placed
The cost of the ads
The number of exposures to each group (HIM, HIW, LIP)
The deviation from the exposure goal of each group
9.2 | 9.3 | 9.4

BURNIT1.XLS

The completed model appears on the next slide.

This file contains the spreadsheet model.

9.2 | 9.3 | 9.4

Caution

Remaining slides seem inconsistent

Next slide: cell D26 = 75, not the 65 in slide #2

Slide #16 : cell G26 = 65 again

Class exercise: quality problem???

9.2 | 9.3 | 9.4

9.2 | 9.3 | 9.4

Developing the Model

To develop this model, proceed as follows.


Inputs. Enter all inputs in the shaded ranges.
Number of ads. Enter any trial values for the numbers of
ads in the Ads range.
Total cost. Calculate the total amount spent on ads in
TotCost cell with the formula
=SUMPRODUCT(UnitCosts,Ads).
Exposures obtained. Calculate the number of people (in
millions) in each group that the ads reach in the Obtained
range. Specifically, enter the formula
=SUMPRODUCT(B7:G7,Ads) in cell B26 for the HIM group,
and copy this to the rest of the Obtained range for the other
two groups.
9.2 | 9.3 | 9.4

Using the Evolutionary Solver

The completed Solver dialog box is shown here.

9.2 | 9.3 | 9.4

Using the Evolutionary Solver -continued


At this point there is no objective to maximize or

minimize. We are simply looking for any solution that


meets all of the constraints.

When we click on Solve, we get the message that


there is no feasible solution.

It is impossible to meet all of the clients goals and


stay within this budget.

To see how large the budget must be, we ran


SolverTable with the Budget cell as the single input
cell, varied from 700 to 850, and any cell as the
output cell.
9.2 | 9.3 | 9.4

Using the Evolutionary Solver -continued

The results appear in the table below.

They show that unless the budget is greater then


$775,000, it is impossible to meet all of the clients
goals.

9.2 | 9.3 | 9.4

Using the Evolutionary Solver -continued

Now that we know that a $700,000 budget is not


sufficient to meet all of the clients goals, we use goal
programming to see how close Burnit can come to
these goals.

First, we introduce some terminology. The upper and


lower limits on the ads of each type and the budget
constraints are considered hard constraints in this
model. This means that they cannot be violated
under any circumstances.

9.2 | 9.3 | 9.4

Using the Evolutionary Solver -continued


The goals on exposures, on the other hand, are

considered soft constraints. The client certainly


wants to satisfy these goals, but it is willing to come
up somewhat short in fact, it must because of the
limited budget.

In goal programming models the soft constraints are


prioritized. We first try to satisfy the goals with the
highest priority. If there is still any room to maneuver,
we then try to satisfy the goals with the next highest
priority. If there is still room to maneuver, we move on
to the goals with the third highest priority, and so on.
9.2 | 9.3 | 9.4

Developing the Goal


Programming Model

In general, goal programming requires several


consecutive Solver runs, one for each priority level.

However, it is possible to set up the model so that we


can make these consecutive runs with only minor
modifications from one run to the next.

We illustrate the procedure on the next slide. (See


the Goals sheet of the file BURNIT.XLS.)

9.2 | 9.3 | 9.4

9.2 | 9.3 | 9.4

Developing the Goal


Programming Model -- continued

To develop this model, first make a copy of the


original Model sheet shown earlier. Then modify it
using the following steps.
New changing cells. The exposure constraints are no
longer shown as hard constraints. Instead, we introduce
changing cells in the DevUnder and DevOver ranges (Dev is
short for deviations) to indicate how much or over each
goal we are. Enter any values in these ranges. Note that in
the Solver solution, at least one of these two types of
deviations will always be 0 for each goal we will either be
below the goal or above the goal, but not both.

9.2 | 9.3 | 9.4

Developing the Goal


Programming Model -- continued
Balance equations. To tie these new changing cells to the
rest of the model, we create balances in column E that
must logically equal the goals in column G. To do this enter
the formula =B26+C26-D26 in cell E26 and copy it down.
The logical balance equation for each group specifies that
the actual number of exposures, plus the number under the
goal, minus the number over the goal, must be equal the
goal.
Constraints on deviations under. The client is concerned
only with too few exposures, not with too many. Therefore,
we set up constraints on the under deviations in rows 3234. On the left side, in column B, enter links to the DevUnder
range by entering the formula =C26 in cell B32 and copying
down.
9.2 | 9.3 | 9.4

Developing the Goal


Programming Model -- continued
Highest priority goal. The first Solver run will try to achieve
the highest priority goal. To do so, we minimize the Dev1
cell. Do this as shown in the model. Then set up the Solver
dialog box as shown here.

9.2 | 9.3 | 9.4

Developing the Goal


Programming Model -- continued
The constraints include the hard constraints, the balance
constraint, and the DevUnder1 <= Obtained constraint. Note
that we have entered the goals themselves in the Obtained
range. Therefore, the DevUnder1 <= Obtained constraint at
this point is essentially redundant the under deviations
cannot possibly be greater than the goals themselves. We
include it because it will become important in later Solver
runs, which will then require only minimal modifications. The
solution from this Solver run is the one shown. It shows that
Burnit can satisfy the HIM goal completely. However, the
other two goals are not satisfied because their under
deviations are positive.

9.2 | 9.3 | 9.4

Developing the Goal


Programming Model -- continued
Second highest priority goal. Now we come to the key
aspect of goal programming. Once a high priority goal is
satisfied as fully as possible, we move on to the next highest
priority goal. Therefore, we constrain its under deviation to
be no greater than what we already achieved. In this case
we achieved a deviation of 0 in step 4, so enter 0 in cell D32
for the upper limit of the HIM under deviation. Then run the
Solver again, changing only one thing in the Solver dialog
box make the Dev2 cell the target cell. Effectively, we are
constraining the under deviation for the HIW group. The
solution from this second Solver run appears on the next
slide. As we promised, the HIM goal has not suffered at all,
but we are now a little closer to the HIW goal than before.
9.2 | 9.3 | 9.4

9.2 | 9.3 | 9.4

Developing the Goal


Programming
Model
-continued
It was under 11.75 before, and now it is under by only 11.

The lowest priority goal essentially comes along for the ride
in this step. It could either improve to get worse. It happened
to get worse, moving from under by 11.25 to under by 18.

Lowest priority goal. You can probably guess the last step
by now. We minimize the Dev3 cell, the deviation for the LIP
group, while ensuring that the two higher priority goals are
achieved as fully as in steps 4 and 5. As the model is set up,
only two changes are necessary enter 11 in cell D33 and
change the Solver target cell to the Dev3 cell. When you run
Solver this time, however, you will find that there is no room
left to maneuver. The solution remains exactly the same as
shown. This occurs frequently in goal programming models.
After satisfying the first goal or two as fully as possible, there
is often no room to improve later goals.
9.2 | 9.3 | 9.4

Solution -- continued

To summarize Burnits situation, the budget of


$700,000 allows it to satisfy the clients HIM goal,
miss the HIW goal by 11 million, and miss the LP goal
by 18 million.

Given priorities on these three goals, this is the best


possible solution.

9.2 | 9.3 | 9.4

Sensitivity Analysis

Sensitivity analysis should be a part of goal


programming just as it is for previous models we
have discussed.

However, there is no quick way to do it. SolverTable


works on only a single objective, whereas goal
programming requires a sequence of objectives.

Therefore, if we wanted to see how the solution to


Burnits model changes with different budget, say, we
would need to go through the above steps several
times and keep track of the results manually. This is
certainly possible, but it is tedious.
9.2 | 9.3 | 9.4

Effect of changing priorities

With three goals, there are six possible orderings of


the goals. The goal programming solutions
corresponding to these orderings are listed in the
table shown below.

Row 4 corresponding to the ordering we used in the


example. Clearly, the solution can change if the
priorities of the goals change. For example, when we
give the HIW goal the highest priority, none of the
goals are achieved completely.

9.2 | 9.3 | 9.4

You might also like