[NEMO-devel] Sensitivity style testing and uncertainties analysis in NEMO

Ben Elliston bje at air.net.au
Fri Sep 22 21:17:35 AEST 2017


Hi Yusak

On Fri, Sep 22, 2017 at 03:55:36PM +1000, Yusak Tanoto wrote:

> When I want to do sensitivity analysis, what I understand is to
> change the value of an input variable or some of them, for example
> technology costs, fuel costs, and CO2 emission in order to observe
> its impacts towards reliability, and then simulate NEMO.

Many of the parameters you might want to modify in a sensitivity
analysis can be specified on the command line. See the table under
"Running an optimisation" in the notebook documentation.  For these,
it's easy to run multiple evolutions from a shell script (or a batch
file on Windows).  For example, you can run evolve.py in a 'for' loop,
varying the gas price using --gas-price.

For technology costs, the best way is to make a new cost class in
costs.py, add it to the cost_scenarios table (at the bottom of
costs.py) and then you can vary that similarly using --costs in a
'for' loop.

> A bit different, I am thinking about how to incorporate
> uncertainties in NEMO, for example in terms of future demand so that
> NEMO will respond by giving a solution which satisfy the variation
> of future demand. Is this, in principle, possible to be conducted in
> NEMO, I mean to introduce uncertainties or variability in the input
> and having a solution which may satisfy that particular range.

That's possible. You could generate a range of inputs in any way you
like (for example, in good ol' Excel) and then do repeated evolutions
on each value in the range.  I'd previously considered adding some
uncertanty to the simulations (eg. simulating random generator
failures), but this would make the evolution algorithm confused. If it
runs two simulations with the same set of input parameters, it should
get the same output.  With stochastic behaviour, that's out the
window.

Happy to hear others' ideas, too!

Cheers, Ben


More information about the nemo-devel mailing list