ModelRisk Optimizer: Optimisation Under Uncertainty in Excel
Risk in Excel › ModelRisk › Optimizer

ModelRisk Optimizer: optimisation under uncertainty in Excel

Find the best decision. See the risk it carries.

ModelRisk Optimizer searches your Excel model for the decisions that give the best simulated result, inside the limits you set. It simulates every plan it tries, so “best” can mean the highest profit in a bad year or the smallest chance of a loss.

Last updated October 2026
You tell it three things
  1. What you control

    The cells you may change, with their bounds: amounts, whole numbers, choices from a list, yes or no.

    B15:B20 Integer 0…8Fund project? Binary
  2. What “best” means

    A statistic of a simulated result, to maximise, minimise or bring to a goal.

    Maximise P10 profitMinimise mean cost
  3. What must hold

    Hard or soft limits on any result. ModelRisk then simulates each plan it tries and keeps the best.

    P95 toxicity ≤ 34Chance of a loss ≤ 10%

Try it: ten fields and one uncertain season

The Farm Parcels example that comes with the Optimizer

How much revenue can you expect for the risk you accept?

A farm plants ten whole fields with five crops, from steady wheat to valuable but volatile vineyard. The season’s weather moves every crop together. Set how far the season’s revenue may swing, and see the best plan for that limit.

up to $7k
One standard deviation of season revenue, in thousands of dollars
Wheat 2Maize 1Soybean 4Sunflower 2Vineyard 1light = steady, dark = volatile

With a swing of up to $7k, the best plan expects $46.5k a season: 2 wheat, 1 maize, 4 soybean, 2 sunflower and 1 vineyard.

Expected revenue$46.5k
1 season in 10 below$37.5k
1 season in 10 above$55.5k
Season revenue for this plan. Each dot is 2 seasons in 100.
$20k$40k$60k$80k$100kOne season in 50: $30.2kOne season in 50: $33.4kOne season in 50: $35.0kOne season in 50: $36.2kOne season in 50: $37.1kOne season in 50: $37.9kOne season in 50: $38.6kOne season in 50: $39.3kOne season in 50: $39.8kOne season in 50: $40.4kOne season in 50: $40.9kOne season in 50: $41.3kOne season in 50: $41.8kOne season in 50: $42.2kOne season in 50: $42.6kOne season in 50: $43.0kOne season in 50: $43.4kOne season in 50: $43.8kOne season in 50: $44.2kOne season in 50: $44.5kOne season in 50: $44.9kOne season in 50: $45.3kOne season in 50: $45.6kOne season in 50: $46.0kOne season in 50: $46.3kOne season in 50: $46.7kOne season in 50: $47.0kOne season in 50: $47.4kOne season in 50: $47.7kOne season in 50: $48.1kOne season in 50: $48.5kOne season in 50: $48.8kOne season in 50: $49.2kOne season in 50: $49.6kOne season in 50: $50.0kOne season in 50: $50.4kOne season in 50: $50.8kOne season in 50: $51.2kOne season in 50: $51.7kOne season in 50: $52.1kOne season in 50: $52.6kOne season in 50: $53.2kOne season in 50: $53.7kOne season in 50: $54.4kOne season in 50: $55.1kOne season in 50: $55.9kOne season in 50: $56.8kOne season in 50: $58.0kOne season in 50: $59.6kOne season in 50: $62.8kExpected $46.5k
The efficient frontier: the best expected revenue at each limit. Tap a point to pick it.
$4k$8k$12k$16k$20k$40k$60k$80kHighest average: Solver’s answerSwing up to $3k: best plan expects $26.2kSwing up to $5k: best plan expects $37.0kSwing up to $7k: best plan expects $46.5kSwing up to $9k: best plan expects $55.6kSwing up to $11k: best plan expects $62.7kSwing up to $13k: best plan expects $69.6kSwing up to $15k: best plan expects $75.8k$46.5kRevenue swing you accept (standard deviation)
All seven plans as a table
Swing up toExpected1 in 10 below1 in 10 aboveWheatMaizeSoybeanSunflowerVineyard
$3k$26.2k$22.7k$29.7k63100
$5k$37.0k$30.6k$43.4k32410
$7k$46.5k$37.5k$55.5k21421
$9k$55.6k$44.1k$67.1k01522
$11k$62.7k$48.7k$76.7k01243
$13k$69.6k$53.1k$86.1k00154
$15k$75.8k$56.6k$95.0k00046

Excel’s Solver sees one average season, so it would plant 4 sunflower and 6 vineyard and stop there, at the top of the curve. It can’t tell you that plan’s revenue swings by $15k a season, or find a steadier one. ModelRisk Optimizer simulates every plan it tries, so it can keep the swing inside your limit.

Revenue in thousands of dollars per season. Each point is the exact optimum of the example’s model for that limit, as listed in the workbook; in ModelRisk you trace the same curve with Efficient Frontier Analysis.

Why simulate inside the search

Solver sees one future. The Optimizer sees the range.

Excel’s Solver optimises a model with fixed inputs. When the inputs are uncertain, the plan that looks best on the average case can carry risks nobody chose. ModelRisk runs a Monte Carlo simulation for every plan it tries, so you can ask for what you actually want.

What you can ask forExcel Solver, fixed inputsModelRisk Optimizer
Highest profit in an average yearYeson fixed inputsYesMean
Highest profit in a bad year (the P10)Noa fixed model has no P10YesPercentile
Lowest cost with at most a 10% chance of a budget overrunNoYesProbability limit
Smallest average loss in the worst 5% of outcomesNoYesCVaR
A measure kept inside a limit on 95% of daysNoYesPercentile limit
A result brought as close as possible to a targetYesYesEqual to goal
In ModelRisk

Set it up and run it in one window

Open it from the ModelRisk ribbon. The set-up is saved inside the workbook, so it travels with the file. These are the real windows, on the Desalination example that comes with the Optimizer.

Desalination example: six reverse-osmosis trains, uncertain feed salinity.Minimise mean daily cost  Dose per train: 0…8  P95 toxicity ≤ 34

Choose the cells you control

Add each decision cell from the sheet and give it a type and bounds. Here each train’s dose is a whole number from 0 to 8.

ContinuousIntegerDiscrete (Step)Discrete (List)Binary
Input Settings: cell B20 is an integer from 0 to 8.
Run it on your own modelThe 15-day trial is fully functional, and the example workbooks open with their set-up saved: press Start.
Download free 15-day trial
What it handles

The decisions you face, in the terms you think in

Real decisions come in whole units, under budgets, with limits on what can go wrong. The Optimizer lets you write each of those down directly, on any cell of your model.

Objectives

Maximise, minimise or hit a goal on any of 18 statistics of a simulated result, plus Six Sigma measures. Several objectives combine into one score.

MeanPercentileProbabilityCVaRStdDev

Decisions

Continuous, whole-number, stepped, listed or yes/no cells. Groups keep a set of decisions within a budget, in a sequence or assigned to slots.

IntegerBinaryBudget groupSequence

Constraints

Limits on any statistic of any output, hard or soft with a penalty weight, plus formula constraints that must be TRUE.

HardSoftFormula

Engines

Method Auto reads the model’s structure and picks the engine. You can also choose one yourself.

Vertex DetectorProjected GradientBFGSBrentGeneticGoal Seek
  • Efficient frontier: re-optimises across a range of one limit
  • Scenarios: several set-ups per workbook, saved with it
  • Stopping rules: tolerance, stagnation, trial and time limits, or your own formula
  • Repeatable runs: set a seed and get the same answer again
  • VBA macros: at the start, the end, and before or after each trial
  • 26 example workbooks: one for each engine and feature, ready to run
Where it helps

Questions it answers

Wherever a plan has to be chosen before the uncertainty plays out, and some outcomes are worse than others.

Project portfolios

Which projects to fund within the capital budget, for the highest expected value with a cap on the chance of missing the return target.

Decide
Yes or no per project
Limit
Probability of a shortfall

Contingency and reserves

The smallest reserve that still meets your confidence target across several uncertain cost lines.

How to calculate cost contingency
Decide
Reserve per cost line
Limit
Percentile of the overrun

Inventory and capacity

Order quantities or capacity that balance the risk of running out against the cost of holding too much.

Decide
Whole units
Limit
Chance of a stock-out

Insurance and finance

Capital or limits across lines of business, with a cap on the tail risk you carry.

Decide
Allocation per line
Limit
CVaR of the loss

Questions from the 26 example workbooks

  • Cold-chain vaccine depotsHow many coolers and backup batteries per depot keep temperature excursions to essentially zero?90th percentile limit
  • Stadium gatesHow many lanes to open at each gate so the crowd clears within 8 minutes on 95% of nights?95th percentile limit
  • Radiotherapy planWhich beam weights maximise the tumour dose reached even on the worst 10% of days, while the nearby organ stays within tolerance 95% of the time?P10 objective, probability limit
  • Wastewater aerationHow many blower steps per basin minimise the worst-case energy bill while keeping oxygen safe?CVaR objective
  • Wind farm curtailmentHow much to curtail each cluster to steady grid frequency, giving up as little revenue as possible?Standard deviation limit
  • Micro-grid dispatchHow much power to draw from each source for the best expected margin within feeder and emissions limits?Mean objective, two limits
Speed

Fast enough to simulate every plan

An optimisation runs a full simulation for every plan it tries, often hundreds of them. In the Optimizer the Use Turbo Simulation box is ticked by default, and Turbo is included in every ModelRisk licence.

The Desalination run: 400 plans, each simulated 1,000 times Each square is one plan the Optimizer tried. Green is the best, found at trial 239. Shown slowed down: the real run took 2.5 seconds.

400 of 400 plans simulated · best plan: no. 239

Plan simulatedBest plan

From the Results Overview above: 400 simulations of 1,000 samples each, so 400,000 recalculations of the model in one optimisation.

~200×median speed-up, simulation phase
2 in 3test models more than 100× faster
  • Turbo analyses the workbook once, compiles only the cells that change between iterations and runs them on every processor core.
  • Before a workbook’s first Turbo run, ModelRisk offers to check that Turbo reproduces the classic engine on it.
  • You can make Turbo the default for one workbook, or for every new model.

Simulation phase only: 89 models from our internal test library, same workbook, 1,000 iterations, Turbo against ModelRisk’s classic engine. Excludes the one-time model analysis and opening the workbook. The gain depends on the model’s structure. How Turbo works

Coming from RISKOptimizer or Crystal Ball

Optimisation comes with every licence

In @RISK, RISKOptimizer comes only with the Industrial edition. Every ModelRisk licence includes the Optimizer and Turbo, and the converter brings @RISK models, RISKOptimizer models included, across in a couple of clicks.

List price per user per year, with optimisation
@RISK Industrial, with RISKOptimizer€3,500
ModelRisk, Optimizer includedat most €1,550

@RISK price from Lumivero’s web shop, retrieved October 2026. ModelRisk prices are on our pricing page, before volume and multi-year discounts.

Bring your models across

The free converter rewrites @RISK functions as ModelRisk ones and brings RISKOptimizer models across as well. Converted models stay ordinary Excel workbooks. Switching from @RISK · ModelRisk vs Crystal Ball

Compare it yourself

Our ten optimisation test models come in ModelRisk, @RISK and Crystal Ball versions, so you can run them in each product. Download the test models

Get started

Try it in three steps

Release details are in the ModelRisk release notes.

  1. Install the trial

    Fifteen days and fully functional. You can keep your current tools installed alongside it.

    Download free 15-day trial
  2. Open a model and press Start

    Choose ModelRisk → Optimizer on the ribbon. The example workbooks open with their set-up saved, so you can watch one run first.

  3. Send us your model

    Have an optimisation in RISKOptimizer or Solver you want to move? Send it to us and we’ll help you set it up.

    Contact us
Questions

Common questions

What is ModelRisk Optimizer?

ModelRisk Optimizer is the optimisation engine built into ModelRisk, Vose Software’s Monte Carlo simulation add-in for Excel. You choose the cells you control, define the objective on a simulated output (for example the mean NPV or the P90 cost) and set constraints; ModelRisk searches for the decisions that give the best simulated result. It is included in every ModelRisk licence at no extra cost.

Why optimise with simulation rather than Excel Solver?

Solver optimises a model with fixed inputs. When inputs are uncertain, the plan that is best on the average case can be a poor plan across the range of outcomes. Optimising on the simulated output lets you define best in risk terms, such as the highest median NPV with at most a 10% chance of a loss.

What can the objective be?

Any of 18 statistics of an output’s simulated distribution: the value, mean, median, mode, minimum, maximum, range, standard deviation, variance, semi-standard deviation, skewness, kurtosis, a percentile, the probability of being above, below or between values, and the lower or upper CVaR, plus Six Sigma measures. Each objective is maximised, minimised or brought to a goal, and several objectives combine into one score.

What kinds of decisions can it handle?

Continuous, integer, stepped, listed and yes/no (binary) decision cells, with bounds that can be numbers or cell references. Groups optimise several decisions together: within a budget, as a sequence with precedence rules, or assigned to a number of slots.

Can I see the trade-off between risk and return?

Yes. Efficient Frontier Analysis takes one hard constraint, sweeps its bound across a range you choose and runs a full optimisation at each point. You get a chart and a table of the best result at each bound, which you can insert into Excel or build into a report.

How fast is ModelRisk Optimizer?

Turbo analyses the workbook once, compiles only the cells that change between iterations and runs them on every processor core. Across 89 models from our internal test library, the simulation phase ran a median of about 200 times faster than ModelRisk’s classic engine (same workbook, 1,000 iterations, excluding the one-time model analysis); the gain depends on the model. The Optimizer runs many simulations, so it uses Turbo by default.

Is the optimisation saved with the workbook?

Yes. The whole set-up is stored in a hidden sheet inside the workbook, so it travels with the file, and one workbook can hold several named scenarios.

Can I switch from RISKOptimizer or Crystal Ball’s optimiser?

Yes. ModelRisk converts @RISK and Crystal Ball models free of charge, and the converter brings RISKOptimizer models across as well. ModelRisk costs at most €1,550 per user per year with the Optimizer included. In @RISK, RISKOptimizer comes with the Industrial edition, listed at €3,500 per year in Lumivero’s web shop (retrieved October 2026).

Try it on a decision you know

Download the free 15-day trial, open an example or one of your own models, and press Start. If you’d rather see it first, we’ll walk you through it on a call.

@RISK and RISKOptimizer are trademarks of Lumivero, LLC. Crystal Ball is a trademark of Oracle. Vose Software is not affiliated with either. @RISK prices are from Lumivero’s public web shop (shop.lumivero.com), retrieved October 2026, shown in euros as listed to EU visitors, and may change.