EVolver - Version 7 - Optimization Software
From Other Software
Wouldn’t you like to know the best allocation of your limited resources to maximize your profits? Or the most efficient schedule to minimize costs? Or the most efficient remediation strategy to minimize environmental damage?
With Evolver, you can tackle tough problems like these, and much more. Evolver is an advanced, yet simple-to-use optimization add-in for Microsoft Excel. Evolver uses innovative genetic algorithm (GA), OptQuest (Industrial edition only), and linear programming technology to quickly solve problems in finance, distribution, scheduling, resource allocation, manufacturing, budgeting, engineering, and more. Virtually any type of problem that can be modeled in Excel can be solved by Evolver, including otherwise unsolvable, complex nonlinear problems. Evolver has a unique ability arrive at the best overall “global” solution to a problem—solutions traditional solvers typically miss.
New in Version 7 Industrial Edition – Efficient Frontier Analysis
Efficient frontier analysis is very common in financial modeling, particularly in the area of portfolio optimization. An efficient frontier is a graph mapping out the optimal return for any risk level one is willing to accept.
For each acceptable risk level you specify, Evolver performs an optimization. In a financial portfolio, we are optimizing the expected return by changing the various allocations of investment funds. The risk level is a constraint that we vary across a range of possible values. The resulting efficient frontier is a 2-dimensional graphical representation of many optimization results. With efficient frontiers, you can greatly enhance the performance of any portfolio.
The efficient frontier feature is also applicable outside the field of portfolio optimization: it can be used whenever you want to perform many optimizations fast in order to analyze tradeoffs between two quantities in an optimization problem.
Standard optimization programs such as Excel’s Solver are good at finding the best “local” solution, or combination of values to maximize or minimize the outcome of a straightforward spreadsheet model given certain constraints. They find a solution which seems to be producing favorable results and continue to work on that basis, without trying new solutions. This is known as “hill climbing.” However, these programs are not set up to handle more complicated, nonlinear problems where the best local solution may not be the best absolute answer. Evolver, using innovative “mutations” and combinations of solutions, or “organisms,” is well-suited to finding the best overall answer by exploring the entire universe of possible answers.
Using Evolver involves three simple steps:
Set Up Your Model.
The Evolver Model window provides one-stop setup for all optimization problems. Here you specify the target cell, identify cells to adjust, and define constraints. Adjustable cells and constraints support cell ranges for easy setup and changes, while target cells can be maximized, minimized, or approach a specific goal.
Defining Ranges and Stopping Conditions
When defining adjustable cells, you can specify the maximum and minimum boundaries of ranges of cells directly in Excel, greatly simplifying setup and making changes easy. For example, you can tell Evolver to adjust cells B1:B5, with a minimum value for each in A1:A5, and a maximum value for each in C1:C5. Multiple groups of cells may be specified, with multiple ranges in each group.
You must also define constraints in your model. For example, there may be limited resources which must be modeled. When defining constraints (hard or soft), you can also specify minimums and maximums with cell ranges.
Finally, set stopping conditions for your optimization, telling Evolver when to stop the optimization.
Evolver uses six different solving methods that you can specify to find the optimal combination of adjustable cells. Different methods are used to solve different types of problems. The six methods are:
- Recipe - a set of variables which can change independently.
- Grouping - a collection of elements to be placed into groups.
- Order - an ordered list of elements.
- Budget - recipe algorithm, but total is kept constant.
- Project - order algorithm, but some elements precede others.
- Schedule - group algorithm, but assign elements to blocks of time while meeting constraints.
Evolver also allows a great degree of control over how it performs the optimization itself. You can set optimization parameters, runtime settings, control macros and more in the Evolver Settings dialog.
Run the Optimization.
Click the Start icon to start the optimization. Evolver will start generating trial solutions in an effort to achieve the target set in Step 1. The summary Evolver Progress window appears, showing optimization status and best answer achieved thus far. This window lets you pause, stop, and run the optimization using playback controls. You can also monitor progress in detail with the Evolver Watcher. Tabbed reports show real-time updates on best answers achieved, all solutions tried, the diversity of solutions being tried, and more.
What Optimization Does
During an optimization, Evolver generates a number of trial solutions and uses genetic algorithms, OptQuest, or linear programming to continually improve results of each trial. With genetic algorithms, each possible solution becomes an independent 'organism' that can 'breed' with other organisms. The spreadsheet model acts as an environment for the organisms, determining which are 'fit' enough to survive based on their results, and occasionally trying “mutations,” or completely new solutions.
View Optimization Results.
After optimization, Evolver can display the results of the original, best, and last solution on your entire model, updating it with each scenario in a single click. This makes it easy to decide the best course of action. You can also generate reports directly in Excel for an optimization summary, log of all simulations, and log of progress steps.