Financial Modeling Intro

advertisement
Solver & Optimization Problems




An optimization problem is a problem in which we
wish to determine the best values for decision
variables that will maximize or minimize a
performance measure subject to a set of constraints
A feasible solution is set of values for the decision
variables which satisfy all of the constraints
An optimal solution is a feasible solution which
achieves the maximization/minimization objective for
the performance measure
Solver is an Excel Add-in which can identify the
optimal solutions for a correctly defined spreadsheet
model
Premium Solver for Excel (pg.54-55)
Components of an Optimization
Problem

Decision Variables: Changing cells, the
exogenous cells users experiment with to try
to improve the situation and which are under
the user’s control

Constraint Cells: The endogenous cells
that users watch to make sure that cell values
remain in an appropriate range

Objective: Target cell, the endogenous
performance measure cell that the user wants
to maximize or minimize
Influence Chart Notation



Changing Cells: No arrows are directed into these
points. They are parameters that are under the
manager’s control. (Denoted with squares)
Constraint Cells: Arrows must point into the cell.
Changing cells must directly or indirectly influence
constraint cells, so an attempt to attain feasibility can
be made. (Denote with circles)
Target Cell: Cell that started the influence chart.
Arrows must point into the target cell and changing
cells must directly or indirectly influence it, so an
attempt to optimize the target can be made. (Denote
with polygon)
Overview of Mathematical Programming
Optimization Techniques

Linear Programming:
• Continuous values for decision variables
• Linear constraints
• Single linear objective

Nonlinear Programming:
• Continuous values for decision variables
• Linear or nonlinear constraints
• Single linear or nonlinear objective
Overview of Mathematical Programming
Optimization Techniques (continued)

Integer Programming:
• Integer values for decision variables
• Linear constraints
• Single linear objective

Goal Programming:
• Continuous values for decision variables
• Linear or nonlinear constraints
• Several linear objectives
Linearity



A linear function is where each variable appears in a
separate term together with its constant coefficient.
The graph of a linear function of two variables is a
straight line
An optimization problem is linear if:
• the objective is a linear function of the decision
variables
• Each constraint cell is a linear function of the
decision variables
Integrality Considerations



In linear programming, the decision variables are not
required to assume only integer values. Therefore
often fractional solutions are identified as the optimal
solution.
If one or more decision variables need to consider
only integer values, the model becomes an integer
programming problem.
If possible, fractional solutions can be rounded,
interpreted as the average number or work-inprogress or ignored if the model is for planning
purposes only
Graphical Solutions (for 2 decision
variable problems)

Plot all constraints including nonnegativity
ones

Determine the feasible region. (The feasible
region is the set of feasible solution points)

Identify the optimal solution using either
•
•
the isoprofit or isocost line method
the extreme point method which is based on the
property that an optimal solution will always exist
on at least one of the corner points of the feasible
region
Types of LP Solutions

Any linear program falls in one of three categories:
•
•
•
is infeasible (the problem is overconstrained so
that no solution satisfies all the constraints)
has a unique optimal solution or alternate optimal
solutions
has an objective function that can be increased
without bound
Example: Feasible Problem with
Unique Solution

Solve graphically for the optimal
solution:
Max
s.t.
z = x1 + x2
4x1 + 3x2 > 12
2x1 + x2 < 8
x1, x2 > 0
Example: Unique Optimal
Solution

There is one point that satisfies all four constraints,
x2
and maximizes
the objective. (0,8) is the optimal
solution.
2x1 + x2 < 8
8
4x1 + 3x2 > 12
4
3
4
x1
Solver Result Messages


Solver found a solution. All constraints and optimality
conditions are satisfied: Solver has correctly
identified an optimal solution for the problem you
have formulated. Note that there may be alternative
optimal solutions possible however.
Solver has converged to the current solution. All
constraints are satisfied: You have not selected the
linear programming option in the Solver options.
Thus nonlinear programming is being performed and
this is the best solution Solver has found so far. It is
not guaranteed to be the optimal one however.
Example: Infeasible Problem

Solve graphically for the optimal
solution:
Max
s.t.
z = x1 + x2
4x1 + 3x2 < 12
2x1 + x2 > 8
x1, x2 > 0
Example: Infeasible Problem

There are no points that satisfy both constraints,
x2 problem has no feasible region, and no
hence this
optimal solution.
2x1 + x2 > 8
8
4x1 + 3x2 < 12
4
3
4
x1
Solver Result Messages

Solver could not find a feasible solution: You may
have too many constraints, one of the constraints
may be entered wrong (e.g. the inequality sign might
be going the wrong way) or you may not have
enough changing cells.

Set Cell values do not converge: Your model as
formulated is unbounded. One or more constraint is
missing from the problem or entered wrong. Often
times the modeler has forgotten to check the Assume
Nonnegativity option in Solver.
Example: Unbounded Problem

Solve graphically for the optimal
solution:
Max
s.t.
z = 3x1 + 4x2
x1 + x2 > 5
3x1 + x2 > 8
x 1, x 2 > 0
Example: Unbounded Problem

The feasible region is unbounded and the objective
function line can be moved parallel to itself without
bound so that
x z can be increased infinitely.
2
3x1 + x2 > 8
8
5
x1 + x2 > 5
Max 3x1 + 4x2
2.67
5
x1
Solver Result Messages

The Linearity Conditions required by this Solver
Engine are not satisfied: Solver’s preliminary tests
indicate that your model is not linear. This may be
the case. However sometimes the test fails not due to
nonlinearity, but due to poor scaling (e.g. some #s
are in % and others in millions). If you think your
model is linear, try resolving the model again. Some
times Solver can find the solution the second time. If
not, use the option in Solver called Use Automatic
Scaling. Solver will attempt to rescale your data. If
that doesn’t solve the problem, you will need to
rescale the data yourself.
Solver Result Messages

Solver encountered an error value in a target or
constraint cell: Using the optimization technique
selected, a cell formula resulted in an error message
and the algorithm cannot continue solving the
problem.

This can occur if you have a nonlinear formula in a target or
constraint cell and you try to solve the problem using the
Standard simplex LP technique. Make the formula linear or
switch to the Nonlinear solution technique.

This also happens when your formula results in a number that is
not real (for instance, when you divide by zero). You will need
to fix the logic and then close down and reopen Excel to clear
the registry of this error message.
Solver Modeling Requirements



All components of the optimization problem must be
on the same worksheet. Solver’s settings are saved
with the sheet.
To speed up computation time, keep reports, data
sets used to calculate parameter values, and other
intermediate calculations on a different worksheet.
Solver’s constraint dialog box will not let you enter
formulas. All formulas and calculations must be done
on the worksheet. The constraint dialog box just
compares cells to determine feasibility.
Ragsdale’s Chpt 3.9 Investment
Problem

Problem: how to design a retirement income portfolio
for retirees using corporate bonds?

Client has $750,000 in liquid assets to invest

A list of upcoming bond issues from 6 companies has
been identified and is shown in the Investment
Problem worksheet of the LPFInancialPlanning.xls
spreadsheet.

Restrictions exist regarding how money should be
allocated across the 6 bonds in order to control the
risk of the portfolio.
Retirement Planning Example




You are planning for retirement. At the
beginning of each year for the next 40 years,
you will contribute some money to your
retirement fund. You expect your investment
to earn 8% on average per year.
When you retire in 40 years, you plan to
withdraw $100,000 per year for 20 years.
How much money should you plan to
contribute to your retirement each year?
Refer to the Retirement Planning model in the
LPFinancialPlanning.xls spreadsheet
Download