You are on page 1of 8

# INFORMATION TECHNOLOGY

FEBRUARY 2009 THE CHARTERED ACCOUNTANT 1408
M
icrosoft Excel
Solver is an op-
timisation tool,
inbuilt provided into Ex-
cel. This tool can be used
problems like ‘optimum
product mix problems’,
‘transportation or distribu-
AN INTRODUCTIONTO EXCEL
SOLVER – AN OPTIMIZATION
TOOL
—CA. Liyakatali Lal
(The author is a Member of the Insti-
tute. He can be reached at liyakatali_
lal@in.com)
([FHOVROYHULVDQRSWLPL]DWLRQWRROZKLFKFDQEHXVHGWRÀQGVROXWLRQRU
make decision on real life business problems, where we want to arrive at
decision either based on maximum or minimum value of something. For ex-
DPSOHSURÀWFRVWUHWXUQRQLQYHVWPHQWHWF8VLQJ([FHO6ROYHULVHDV\DQG
VLPSOH,WFDQEHXVHGWRDQVZHUSUREOHPVZKLFKRWKHUZLVHVHHPVGLIÀFXOWRU
tion problems’, ‘capital Budget-
LQJ SUREOHPV· ¶ÀQDQFLDO SODQ-
ning problems’, ‘retirement
planning problems’, and ‘work-
force scheduling problems’.
8VLQJ ([FHO 6ROYHU LV HDV\ DQG
simple. It can be used to answer
problems which otherwise seem
GLIÀFXOWRUWLPHFRQVXPLQJ
INFORMATION TECHNOLOGY
1409 THE CHARTERED ACCOUNTANT FEBRUARY 2009
See below listed illustrative problems:
A 1vpe oí problem Example
Optimum product
mix
How can a large FMCG
companv determine
the monthlv product
mix at their Mumbai
plant that maximizes
their pro£t with use oí
limited resource?
B Transportation or
Distribution
If XYZ Textile Ltd
produces textile at
three different loca-
tions and distribute to
four outlets, how can
thev minimize the cost
of meeting demand for
them?
C Capital Budgeting
(Selection of proj-
ect)
Software Ltd would like
to undertake 10 projects
that will require capital
and labour for the next
íew vears. 1hev do not
have enough resources
for all projects; which
ones thev should un-
dertake?
D Financial Planning How should I allocate
mv in·estment portío-
lio among Govt. bond,
blue chip stocks, specu-
lative stocks and short
term deposits?
In all the abo·e situations, we want to £nd the best`
wav to do something i.e. we want to either maximize
or minimize values of certain cells in a worksheet to
achie·e our objecti·e. Microsoít Oí£ce Lxcel Sol·er
tool helps us answer all such optimization problems.
1he best wav to understand how to use Sol·er is to
look at some detailed examples
An optimization model has three parts: target cell,
changing cells, and the constraints.
1. The target cell represents the objective or goal. We
want to either minimize or maximize the amount in
the target cell. In our examples
Example Maximise or
minimise
Target cell
FMCG Com-
panv - Product
Mix
Maximise Pro£t
XYZ Textile
Ltd
Minimise Di s t r i but i on
cost
Soítware Ltd -
Project
Maximise Net present val-
ue (NPV)
I n v e s t me n t
planning
Maximise Annual return
2. The changing cell represents cells that we can
change or adjust to optimize the target cell. In our
examples
Example Changing cell
lM(G (ompanv -
Product Mix
Otv oí each product pro-
duce during the month
XYZ Textile Ltd Otv produce at each
plant and shipped to
each outlet
Soítware Ltd - Project Which project to be se-
lected
Investment planning Amount oí monev in-
vested in each asset class
3. The list of problem Constraints in our examples
Example Changing cell
lM(G (ompanv -
Product Mix
Product mixes don’t
use more resource than
a·ailable: Otv should not
be more than demand.
XYZ Textile Ltd Don’t ship more than
plant capacitv: outlet
recei·e Otv what thev
need
Soítware Ltd - Project Projects can’t use more
capital and labour than
available
Investment planning Minimise risk and £xed
% in speculation stock
1o install Sol·er, click the Microsoít Oí£ce Button,
click Excel Options, and click Add-Ins. In the Man-
age box at the bottom of the window, select Excel
Add-Ins box, and click OK. After Solver is installed,
vou can run Sol·er bv clicking Sol·er in the Data tab.
Figure 1 shows the Solver parameters dialog box.
Lxcel200¯: Oí£ce Button ·· Lxcel Options ··
INFORMATION TECHNOLOGY
FEBRUARY 2009 THE CHARTERED ACCOUNTANT 1410
Go ·· (heck Sol·er Add-in ·· OK. Aíter installa-
tion go to Data tab in ribbon ·· Sol·er
in ·· OK. Aíter installation 1ool ·· Sol·er
Figure 1 : Solver parameters dialog box
After we have input the target cell, changing cells, and
constraints, what does Solver do? To understand this
we need to know some background in Solver termi-
nologv. Anv speci£cation oí the changing cells that
satis£es the model's constraints is known as a íeasible
solution. In our example oí lM(G companv product
mix that satis£es the íollowing three conditions would
be a feasible solution:
1. Does not use more raw material or labour than
is available
2. Does not produce more of each product than
is demanded
3. Does not produce a negati·e amount oí anv
product
Lssentiallv, Sol·er searches all íeasible solutions and
£nds the one that has the "best" target cell ·alue the
largest value for maximum optimization, the smallest
for minimum optimization). Such a solution is called
an optimal solution. Some Solver models have no op-
timal solution and some have a unique solution. Oth-
er Sol·er models ha·e multiple actuallv, an in£nite
number of) optimal solutions.
A. Determine the Optimal Product Mix:
How can I determine the monthly product mix
WKDWPD[LPL]HVSURÀWDELOLW\"
(ompanies oíten need to determine the Otv oí each
product to produce on a monthlv basis. In its simplest
form, the product mix problem involves how to deter-
mine the amount of each product that should be pro-
duced during a month to maximize pro£ts. Product
mix must usuallv adhere to the íollowing constraints:
1. Product mix can't use more resources than are
available.
2. \e can't produce more that its demand, because
the excess production is wasted (for example, a per-
ishable drug).
Let's sol·e the íollowing example oí the product mix
problem. Sav we work íor a lM(G companv that
produces six different products at their plant. Produc-
tion of each product requires.
ligure 2 : leasible solution not optimum, £ts con-
straints
Iow can this companv maximize its monthlv pro£t,
within the labour, material and demand constraints?
If we knew nothing about Excel Solver, we would
attack this problem bv constructing a worksheet to
track pro£t and resource usage associated with the
product mix. 1hen we do trial and error to ·arv the
product mix to optimize pro£t within the gi·en con-
straints. \e can use Sol·er in process onlv at the trial-
and-error stage i.e. Solver is an optimization tool that
performs the trial-and-error search.
In solving the product mix problem we need to com-
pute the resource usage and pro£t associated with
given product mix. An important function SUM-
PRODUCT can be used to calculate this. 1he SUM-
PRODU(1 íunction multiplies corresponding ·alues
in cell ranges and returns the sum of those values.
Lach cell range used in a SUMPRODU(1 e·aluation
must ha·e the same dimensions i.e. we can use SUM-
PRODU(1 with two rows or two columns, but not
with one column and one row.
Let's trv to compute our resource usage. Our usage
is calculated as "Labour Otv oí P Otv produce oí
P, - Labour oí O Otv oí O, -. Labour oí U
Otv oí U,`, we could compute usage in tedious íash-
ion as ~B4B5-(4(5-D4D5-L4L5-l4l5-G
Available
INFORMATION TECHNOLOGY
1411 THE CHARTERED ACCOUNTANT FEBRUARY 2009
4G5 or bv using ~SUMPRODU(1B4:G4,B5:G5,.
Similarlv, raw material usage could be computed as
~B4B6-(4(6-D4D6-L4L6-l4l6-G4G
6 or bv ~SUMPRODU(1B4:G4, B6:G6,. Lntering
formula in traditional fashion for six products is time-
consuming. Imagine how long it would take if we are
working with a companv that produced 50 products.
\e can now identiív the three components oí our
product mix solver model:
1. Target cell - Our goal is to maximize prof-
it in cell B11 computed bv íormula as
~SUMPRODU(1B4:G4,B9:G9, .
2. (hanging cells - 1he Otv produced oí each prod-
uct (listed in the cell range B4:G4)
3. Constraints - We have the following constraints:
z Do not use more of labour or raw material
than available i.e. values in cells B13:B14 (used)
must be less than or equal to the values in cells
D13:D14 (available).
z Do not produce more of a drug than its de-
mand i.e. values in the cells B4:G4 (produced)
must be less than or equal to the value in cell
B3:G3 (demand).
z \e can't produce a either partial or negati·e
Otv oí anv product.
Now enter the target cell, changing cells and con-
straints into Solver. Then click the Solve button to
£nd a pro£t maximizing product mix. Sol·er param-
eter dialog box will look like
Figure 3 : Final dialog box for product mix problem
Click the Options button in the Solver Parameters
dialog box. Check Assume Linear Model box and As-
sume Non-Negative box as shown below. Click OK.
Figure 4 : Solver option settings
Checking the Assume Non-Negative box ensures
that changing cell assumes a non-negative value. We
checked the Assume Linear Model box because this is
a linear problem. Lssentiallv, a Sol·er model is linear
under the following conditions:
1. 1he target cell is computed bv adding together
the terms in íorm changing cell, constant,
2. Lach constraint is e·aluated bv adding together
the terms in íorm changing cell, constant,.
Since our product mix problem is a linear model, whv
should we care?
1. If a Solver model is linear and we select As-
sume Linear Model, Solver is guaranteed to
£nd the optimal solution to the Sol·er model.
Ií a Sol·er model is not linear, Sol·er mav or
mav not £nd the optimal solution.
2. If a Solver model is linear and we select As-
sume Linear Model, Sol·er uses a ·erv eí£cient
algorithm the simplex method, to £nd the
model's optimal solution. Ií a Sol·er model
is linear and we do not select Assume Linear
Model, Sol·er uses a ·erv ineí£cient algorithm
the GRG2 method, and might ha·e dií£cultv
£nding the model's optimal solution.
After clicking OK in the Solver Options box, we re-
turn to the main Solver parameter dialog box, shown
earlier in Figure 3. When we click Solve, Solver calcu-
INFORMATION TECHNOLOGY
FEBRUARY 2009 THE CHARTERED ACCOUNTANT 1412
lates an optimal solution (if one exists) for our prod-
uct mix problem. An optimum solution calculated in
ligure 5.
ligure 5 : Optimum solution oí product mix within
constraint
Our lM(G (ompanv can maximize pro£t oí ¯,601
bv producing 1 unit oí R, 5¯6 units oí S and 1000
units of T. We can be sure that with our limited re-
sources and demand, there is no wav to make more
than ¯,601.
Is it necessary that Solver model always have a
IHDVLEOHVROXWLRQ"
1he answer is No`. Sav, in our example demand íor each
product must be met. Demand constraint will change from
B4:G4 ·~ B3:G3 to B4:G4 ·~ B3:G3. Sol·er result gi·es
message as "Sol·er could not £nd a íeasible solution".
This message means that with our limited resources, we
What if Solver result gives the message as “The
VHWFHOOYDOXHVGRQRWFRQYHUJHµ"
Let's see what happens ií we allow unlimited demand
for each product, delete demand constraint and we
allow negati·e Otv to be produced, clear the Assume
Negative box. When we click Solve, Solver returns the
message "Set (ell Values Do Not (on·erge". 1his
means that our model has an error.
%7UDQVSRUWDWLRQRU'LVWULEXWLRQ3UREOHPV
Manv companies manuíacture products at diííerent
locations Supplv point, and ship their products to
customers (Demand points). A question then is, what
is the least expensi·e wav to produce and ship prod-
ucts to customers and still meet demand· 1his tvpe oí
problem is called a transportation problem. A trans-
portation problem is a linear model with the following
speci£cations:
1. Target cell - Minimize total shipping and dis-
tribution cost
2. (hanging cells - 1he Otv produced at each sup-
plv point and shipped to each demand point
3. (onstraints - 1he Otv shipped írom each
supplv point can't exceed plant capacitv. Lach
demand point must receive its required de-
mand. Also, each changing cell must be non
negati·e and an integer number Partial Otv
cannot be shipped)
If XYZ Textile Ltd produces textile at three different
locations and distribute to íour outlets, how can thev
minimize the cost of meeting demand for them?
Let's now sol·e the íollowing example oí the 1rans-
portation problem.
ligure 6 : leasible solution not optimum, within
constraints
\e can now identiív the three components oí 1rans-
portation Solver model:
1. Target cell - Our goal is to minimise Total ship-
ment cost in cell (19 computed bv using íormula
~SUMPRODU(1B4:L6,B12:L14, or can also be
calculated in tedious íashion as ~B4B12-(4(12-
D4D12-L4L12-B13B5-(13(5-D13D5-L1
3L5-B14B6-(14(6-D14D6-L14L6.
|Note: 1he SUMPRODU(1 íunction can multi-
plv corresponding element in two separate rectangle
(both rectangle are of the same size) and add together
the product.]
2. (hanging cells - 1he Otv produced at each supplv
point (Factories) and shipped to each demand point
(Outlet), (listed in the cell range B12:E14).
3. Constraints - We have the following constraints:
z Do not ship írom each lactorv more than
plant capacitv i.e. ·alues in cells l12:l14
(Sent) must be less than or equal to the values
in cells I12:I14 capacitv,.
Available
~SUML12:L14,
Recei·ed & Sent Otv is
calculated bv using SUM
function
INFORMATION TECHNOLOGY
1413 THE CHARTERED ACCOUNTANT FEBRUARY 2009
z Demand from each of warehouse outlet
must be met i.e. ·alues in the cells B15:L15
(received) must be more than or equal to the
value in cell B17:E17 (demand).
z \e can't ship either partial or negati·e Otv oí
anv product i.e. ·alue in cell B12:L14 should
be an integer.
Now enter the target cell, changing cells and con-
straints into Solver. Then click the Solve button to
£nd a minimum shipment cost. Sol·er parameter dia-
log box will look like
Figure 7 : Final solver dialog box for Transportation
problem
Our transportation problem is a linear Solver model
because our target cell is created bv adding together
the terms in íorm changing cell,constant, and both
our supplv and demand constraints are created bv
comparing the sum of changing cells to a constant.
Thus, Click Options and check the Assume Linear
Model and Assume Non-Negati·e boxes. linallv (lick
Solve, Solver will calculate an optimal solution (if one
exists) for our transportation problem. An optimum
solution calculated in Figure 8.
Figure 8 : Optimum solution for transportation prob-
lem that £ts constraints
The minimum shipment cost of meeting demand of XYZ
Ltd is 86,825 deri·ed bv supplving 9500 units írom lactorv3
to \1, 8000 units írom lactorv2 to \3 and so on.
&&DSLWDO%XGJHWLQJ3UREOHPV:
Manv companies like to know which new products to
develop or which projects to be undertaken, i.e. one
want to undertake projects that contribute the greatest
net present value (NPV), subject to limited resources
usuallv capital and labour,. 1he Sol·er íeature in Mi-
crosoít Oí£ce Lxcel can help to make such decisions.
Let's look at this problem, Soítware Ltd would like to
undertake 10 projects that will require capital and labour
íor the next 2 vears. 1hev do not ha·e enough resources
íor all projects: which ones should thev undertake·
ligure 9 : Data to decide which project to undertake -
Capital budgeting problem
Problems where either we want to do or don't do
something can be sol·ed bv using binarv changing
cells. A binarv changing cell alwavs equals 0 or 1.
Where 1 = Do the project and 0 = don’t do the proj-
ect. lor this we need to add constraint bv selecting
changing cell and then choose bin from the list in the
Figure 10 : Add constraint box with option of bin =
Binarv & int ~ Integer
INFORMATION TECHNOLOGY
FEBRUARY 2009 THE CHARTERED ACCOUNTANT 1414
Now, let us sol·e this problem, bv identiív the three
components of capital budgeting model:
1. Target cell - Our goal is to maximise To-
tal NPV in cell L18 computed bv using íormula
~SUMPRODU(1A3:A12,(3:(12,, this íormula
onlv picks up NPV oí project with 1 in column
A and doesn’t consider NPV with 0 in column
A. It can also be calculated in tedious fashion
bv multiplving binarv ·ariable in column A with
NPV ·alues in column (, e·erv row wise and
adding together for all projects to arrive at total
NPV £gure.
2. (hanging cells - \e look íor a 0 or 1 binarv
changing cell for each project (listed in A3:A12).
Here, 1 = Do the project and 0 = don’t do the
project.
3. Constraints - We have the following con-
straints:
z Do not use capital and labour more
than a·ailable in each vear i.e. ·al-
ues in cells L14:I14 Used, must
be less than or equal to the values
in cells L16:I16 A·ailable,. Used capital
and labour is computed bv using íormula
~SUMPRODU(1>A>3:>A>12, L3:L12,
and copv írom L14:I14 > sign is used íor
absolute cell referencing).
z Values of changing cell listed in A3:A12
should be Binarv.
After entering the target cell, changing cells and con-
straints into Solver. Solver parameter dialog box will
look like
Figure 11 : Final solver dialog box with constraint
Since our model is linear, we will also check the As-
sume Linear Model and Assume Non-Negative boxes
under Option. linallv (lick Sol·e, Sol·er will calculate
an optimal solution for our capital budgeting prob-
lem. An optimum solution calculated in Figure 12.
Figure 12 : Optimum solution - maximum NPV with-
in constraint
Soítware Ltd. can obtain maximum NPV oí 6,554 bv
selecting project 1-3, 6-8 and 10.
D. Financial Planning:
1he Sol·er íeature in Microsoít Oí£ce Lxcel can be
used as a poweríul tool íor analvzing £nancial plan-
ning problems like how much monev I need to sa·e
íor retirement· Or how should I allocate mv in·est-
ment portfolio among Govt. bond, blue chip stocks,
speculative stocks and short term deposits?
Let's look at the example in ligure 13, we ha·e total
fund of 20 Lakhs to invest in among 4 options within
following constraints:
z \eighted a·erage risk íactor not to exceed 25
z Amt in speculative stocks should not exceed
20% of total amount invested
z At least 2 Lakhs to be invested in short term
deposits
z In·estment in anv option should be whole
number i.e. fraction of rupee cannot be in-
·ested in anv option.
INFORMATION TECHNOLOGY
1415 THE CHARTERED ACCOUNTANT FEBRUARY 2009
Figure 13 : Feasible solution (not optimum) for In-
vestment decision within given constraints
\e can now identiív the three components oí Invest-
ment problem:
1. Target cell - Our goal is to maximise Annual Return
in cell L6 computed as ~SUML2:L5,.
2. Changing cells - The Investment amount in each
option listed in the cell range D2:D5,.
3. Constraints - We have the following constraints:
z 1otal in·estment amt ·alue in cell D6 not to
exceed total fund available i.e. 20 Lakhs.
z Weighted average risk factor computed in
cell (8 ~SUMPRODU(1(2:(5, D2:D5,´
SUMD2:D5, not to exceed 25.
z Amt in speculative stocks i.e. value in cell D4
not more than value in cell G4 (20% of total
amount invested)
z In·estment in Short term deposits in cell D5
should be at least 2 Lakhs.
z In·estment amount in cell range D2:D5
should be an integer.
After entering the target cell, changing cells and con-
straints into Solver. Solver parameter dialog box will
look like
Figure 14 : Final solver dialog box with all constraints
for Investment decision
In this £nancial planning problem, our model is non-
linear as the relationship that each constraint should be
in íorm changing cell, constant, is not satis£ed in
case of Risk factor constraint, where we have used divi-
sion to calculate weighted a·erage. \e will onlv check
the Assume Non-Negati·e boxes under Option. linallv
Click Solve, Solver will calculate an optimal solution for
our £nancial planning In·estment, problem. An opti-
mum solution calculated in ligure 15.
ligure 15 : Optimum solution within constraints íor
Investment planning
Maximum annual return oí 302,66¯ can be obtained
bv in·esting 383,334 in Go·t. bond, 1,016,666 in Blue
chip stocks, 4 Lakhs in Speculative stocks and 2 Lakhs
in Short term deposits.
Conclusion:
Excel solver is an optimization tool which can be used
to £nd solution or make decision on real liíe business
problems, where we want to arrive at decision either
based on maximum or minimum value of something.
lor example pro£t, cost, return on in·estment, etc.