June 20, 2018
Hot Topics:

Using Neural Networks and OLAP Tools to Make Business Decisions

  • August 7, 2008
  • By Marcia Gulesian
  • Send Email »
  • More Articles »

Appendix 4: Optimization Methods and Concepts

Optimization: The "recipe" solving method

The "recipe" solving method is the simplest and most popular type of solving method. Use recipe whenever the set of variables that are to be adjusted can be varied independently of one another. Think of each variable as the amount of an ingredient in a cake; when you use the "recipe" solving method, you are telling Evolver to generate numbers for those variables in an effort to find the best mix. The only constraint you place on recipe variables is to set the range (the highest and lowest value) that those values must fall between. Set these values in the Min and Max fields in the Adjustable Cells dialog (for example, 1 to 100), and also indicate whether or not Evolver should be trying integers (1, 2, 7) or real numbers (1.4230024, 63.72442). Refer to Figure 8.

Optimization: The "budget" solving method

The "budget" solving method works like the "recipe" solving method, in that it is trying to find the right "mix" of the chosen variables. When you use the budget method, however, you add the constraint that all variables must sum up to the same number as they did before Evolver started optimizing.

A "budget" is similar to a "recipe" except that all of the variables' values must total to a certain number. That number is the total of the variables' values at the time an optimization is started. For example, you might want to find the best way to distribute an annual budget among a number of departments. The "budget" solving method will take the total of the current values for the departments, and use that sum as the total budget to be optimally distributed.

Optimization: Basic concepts

Hill climbing will always find the best answer if a) the function being explored is smooth, and b) the initial variable values place you on the side of the highest mountain. If either condition is not met, hill climbing can end up in a local solution, rather than the global solution.

Highly non-linear problems, the kind often seen in practice, have many possible solutions across a complicated landscape. If a problem has many variables, and/or if the formulas involved are very noisy or curvy, the best answer will probably not be found with hill climbing, even after trying hundreds of times with different starting points. Most likely, a sub-optimal, and extremely local solution will be found (see Figure 10).

Click here for a larger image.

Figure 10: Simple and complicated landscapes.

Evolver does not use hill climbing. Rather, it uses a stochastic, directed search technique, dubbed a genetic algorithm. This lets Evolver jump around in the solution space of a problem, examining many combinations of input values without getting stuck in local optima. In addition, Evolver lets good scenarios "communicate" with each other to gain valuable information as to what the overall solution landscape looks like, and then uses that information to better guess which scenarios are likely to be successful. If you have a complex or highly non-linear problem, you should, and often must, use Evolver.

Figure 11: Evolver generates many possible scenarios, then refines the search based on the feedback it receives.

Appendix 5: OLAP in Project Management

Microsoft Project Server 2007 provides a number of preconfigured OLAP cubes that you can use to explore project, resource, and task information within your data analysis views. Additionally, you can add custom fields to customize the cubes that enable you to extend the Project Server 2007 OLAP cube. For example, you might choose to add an employer or language dimension for the resources cube, or you might want to show more corporate data by adding measure fields for non-project costs to the OLAP cube.

Click here for a larger image.

Figure 12: The process of building the Microsoft Project Server 2007 OLAP cube database.

Page 5 of 6

Comment and Contribute


(Maximum characters: 1200). You have characters left.



Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

By submitting your information, you agree that developer.com may send you developer offers via email, phone and text message, as well as email offers about other products and services that developer believes may be of interest to you. developer will process your information in accordance with the Quinstreet Privacy Policy.


We have made updates to our Privacy Policy to reflect the implementation of the General Data Protection Regulation.
Thanks for your registration, follow us on our social networks to keep up-to-date