SolverTable |
This add-in is a natural extension to the Solver add-in incorporated in Excel. SolverTable performs sensitivity analysis for an Excel optimization model, and, in most cases, its output is more relevant and understandable than the optional sensitivity output provided by Solver itself. SolverTable is very easy to use, as described below. All it requires is an existing optimization model. That is, there must be a spreadsheet model already built, and the corresponding Solver dialog box must already have been filled out. In this help file, we will explain how to use SolverTable and illustrate it with several screen shots.
Start by saving this file to your hard drive: <SolverTable 2007.zip>. After you have saved the zip file, double-click on it to open it up and see the files inside.
1) Copy the SolverTable.xlam file and the corresponding help files (SolverTableHelp.htm and the various SolverTable .gif files) to a common folder on your hard drive. Chris Albright recommends creating a SolverTable folder for this purpose under Microsoft’s Library folder, i.e., c:\Program Files\Microsoft Office\Office12\Library\SolverTable, because this folder is in Microsoft’s “trusted” list. If you want to store the files somewhere else, e.g., D:\SolverTable, then you should add this folder to the trusted list. (To do so, Click on the Office button, then Excel Options, then Trust Center, then Trust Center Settings, then Trusted Locations, and then Add new location.)
2) (One-time only step) Because of the way Solver works and the way SolverTable invokes Solver, you need to change a macro security setting on your PC. Make sure the Developer tab is visible. (If it isn’t, click on the Office button and then Excel Options. In the Popular group, check the Show Developer tab in the Ribbon option.) On the Developer ribbon, click on Macro Security and make sure the “Trust access to the VBA project object model” option is checked. (As long as you’re there, I recommend that you check the second option in the top group: “Disable all macros with notification.”)
3) In Excel, load SolverTable into memory. There are two ways to do this (see "a" and "b" below). Regardless of the way you use, you will know that SolverTable is loaded when you see a SolverTable item on the Add-Ins ribbon.
a) Open the SolverTable.xlam file directly by double-clicking on it in Windows Explorer. If this file is buried way down in some folder, this way might not be very convenient, but you can accomplish the same thing by putting a shortcut to this file on your desktop, so that it’s just one click away. The advantage (or disadvantage?) of this method is that if you then close Excel and reopen it, SolverTable won’t be loaded; you’ll have to load it again.
b) Click on the Office button, then on Excel Options, then on Add-Ins, and then on the Go button at the bottom. Here you see the familiar Add-ins dialog box from earlier versions of Excel. If this is your first time to load SolverTable, you will need to click on the Browse button to find the SolverTable.xlam file. Otherwise, there should be a SolverTable item in the list of available add-ins. Just check its box, and click on OK. The advantage of this second method is that if you then close Excel and reopen it, SolverTable will open automatically. In fact, it will keep opening until you uncheck SolverTable on the Add-Ins list.
Note: In versions of SolverTable for Excel 2003 and earlier, there were two add-in files, SolverTable and SolverTable1. The Excel 2007 versions simplifies this, so that there is now only a single add-in file, SolverTable.xlam.
Excel 2003
Everything you need is contained in this self-extracting file: solvertable.exe. (Don't open it with the browser; save it to your disk first, and then open it by double-clicking on it in Windows Explorer.)
Just make sure that all of the SolverTable files are in the same directory and there are only alphanumeric characters (no spaces or underscores) in the path to these files. Then, in Excel, load the add-in with the Tools/Add-ins menu item. If this is your first time to load SolverTable, you'll need to click on the Browse button to find the SolverTable.xla file. Otherwise, there should be a SolverTable item in the list of available add-ins. Just check its box, and click on OK. SolverTable is no different from any other Excel add-in; they are all loaded this way. You will know that SolverTable is loaded when you see a SolverTable menu item under Excel's Data menu.
Figure 1
Figure 2
The next dialog box, shown in Figure 3, requires you to specify the input cell, the input values (which are assumed to be in regular increments), the output cells, and a location for the table. Note that range names can be used if they exist. The add-in checks your entries in this dialog box for "obvious" errors. For example, the input cell should not contain a formula or a label, the output range should not contain the input cell, the table location shouldn't write over existing values (unless you say it is OK to do so), and so on. However, we won't guarantee that it checks for everything, so be careful when making these entries. Be especially careful that you choose a location for the table that doesn't write over any information you don't want to lose (even though you'll be warned if you try to do so).
Figure 3
The table itself appears in Figure 4. (We've added the heading in row 1 manually.) The small red triangles are Excel comments that SolverTable automatically adds to a number of cells. For example, the comment in cell I4 reminds what the input cell is (in this case, D21). The comments in column J are the Solver messages you normally see after running Solver. For this example, they all contain the message you hope to see: "Solver found a solution. All constraints and optimality conditions are satisfied." However, if there is no feasible solution, say, then the comment will alert you to this. Note that unlike an Excel data table, SolverTable does not put formulas at the top of the table (in row 3 of the figure), because this wouldn't make sense. However, it does put the cell addresses of the output cells. This way, you can remember which outputs are being reported.
Figure 4
Figure 5
SolverTable then creates as many tables as there are output cells (in a vertical direction), as shown in Figure 6. Note that each cell in a table corresponds to a Solver run. For example, we see that when there are 4000 labor hours available and the wage rate is $4 per hour, the optimal profit is $25,200 (top table) and all 4000 labor hours are used (bottom table). Again, there are comments in selected cells. For example, the comments in cells I13 and J12 remind you that the input cells are D11 and B4. The comments in the body of each table report the Solver message, exactly as with one-way tables.
Figure 6
As with all Solver models, it is a good idea to take a close look at the answers and see whether they make sense. For example, in Figure 6 we see all zeros in column L. Does this make sense? Yes, it probably does. When the labor rate is $12 per hour and all other monetary inputs stay constant, labor is evidently too expensive for the company to make a profit. So it produces nothing!
Figure 7
We can now do a one-way sensitivity analysis on this change factor, using the settings in Figure 8. The corresponding table appears in Figure 9.
Figure 8
Figure 9
As another example, suppose you want to keep track of a function of several cells in the model. For example, suppose you want to keep track of the maximum number of frames of any single type produced, that is, the maximum of the changing cell values. You can't select this as an output directly because it doesn't appear anywhere in the model. But the solution is simple: Create a formula for it in some unused cell, and then specify this cell as an output cell.
SolverTable automatically checks for this error message. If Solver gives it, then SolverTable reruns Solver (for this problem) with the Assume Linear Model box unchecked and reports the result. However, to let you know that all of this happened, the corresponding cells of the table are colored yellow, and the comments in these cells describe the problem. An example we encountered appears in Figure 10. This model is indeed linear. However, when we formed the one-way table, Solver thought the model was not linear for input values of 0.80 and 1.00, even though it agreed that it was linear for input values of 0.90 and 1.10. Similarly, for the two-way table, it thought the model was not linear for 2 of the 16 input combinations. This is clearly strange behavior, but it happens fairly frequently. At least, SolverTable provides a solution (using a nonlinear algorithm) rather than the annoying "conditions for linear model are not satisfied" Solver message.
Figure 10
[ CBS
Home Page | Description
| Syllabus | Mission | Downloads ]
[ David
Juran Home Page | B6015
Home Page |
About
the Instructor ]
email: dj114@columbia.edu | tel: (203) 876-0086 | 73 Minuteman Drive, Milford, CT 06460