Closed glarange closed 11 months ago
Hi Gui,
That happens when the precision of the mean estimates are too low to infer a difference in reliability at a meaningful level of statistical significance. My guess is that the system is still very reliable with 100 MW of load added, so the "before" and "after" risks (EUE = 0.6±0.3 MWh/8784h, EUE = 0.3±0.2 MWh/8784h) are too small relative to their standard errors. You could either increase the number of samples used to improve the precision of the result (although the default is 10000 samples, so you'd have to add a lot more), or add more load to the system to get a stronger "signal-to-noise" ratio in the risk metrics. Unless there's a specific reason you want to add 100 MW, I would suggest the latter.
Hi Gord,
I tried increasing the load for both base and augmented systems by same amount:
sys2.regions.load .+= 150
3×8784 Matrix{Int64}:
1335 1336 1352 1386 1490 1637 … 1751 1719 1678 1592 1489 1431
1453 1433 1430 1428 1449 1506 1833 1819 1787 1730 1654 1573
1600 1542 1516 1500 1514 1579 2105 2064 2031 1949 1823 1708
sys.regions.load .+= 150
3×8784 Matrix{Int64}:
1335 1336 1352 1386 1490 1637 … 1751 1719 1678 1592 1489 1431
1453 1433 1430 1428 1449 1506 1833 1819 1787 1730 1654 1573
1600 1542 1516 1500 1514 1579 2105 2064 2031 1949 1823 1708
so that I obtained larger shortfalls:
eue, lole = EUE(shortfallresult), LOLE(shortfallresult)
(EUE = 69±4 MWh/8784h, LOLE = 0.40±0.01 event-h/8784h)
eue, lole = EUE(shortfallresult), LOLE(shortfallresult)
(EUE = 40±2 MWh/8784h, LOLE = 0.26±0.01 event-h/8784h)
But then still got the same issue:
cc_result = assess(sys, sys2, EFC{EUE}(100, "1"), SequentialMonteCarlo())
┌ Warning: Gap between upper and lower bound risk metrics is not statistically significant (p_value=0.15512867481114462), stopping bisection. The gap between capacity bounds is 13 MW, while the target stopping gap was 1 MW.
└ @ PRAS.CapacityCredit ~/.julia/packages/PRAS/jO1jk/src/CapacityCredit/EFC.jl:81
PRAS.CapacityCredit.CapacityCreditResult{EFC{EUE}, EUE{8784, 1, Hour, MWh}, MW}(EUE = 42±2 MWh/8784h, 62, 75, [0, 100, 50, 75, 62], EUE{8784, 1, Hour, MWh}[EUE = 66±3 MWh/8784h, EUE = 36±2 MWh/8784h, EUE = 49±3 MWh/8784h, EUE = 42±2 MWh/8784h, EUE = 45±3 MWh/8784h])
Thanks!
Looks like it narrowed the capacity credit range to 62-75 MW (the 13 MW gap mentioned in the message), but then ran into a similar statistical precision issue (EUE = 42±2 MWh/8784h vs EUE = 45±3 MWh/8784h). So if you want to tighten the gap further (e.g. to the 1 MW target tolerance), you'd still need to add more samples or more load to the system.
OK, I can do that. However, the generating unit in the augmented system is a coal unit with a constant output of 76MW. Shouldn't the EFC be the 76 MW as well?
75 vs 76 MW is definitely within the sampling error of the estimates, so I'm not too surprised. If you look at the components of the EFC result that was returned, you'll see that the original system with the coal unit has EUE of 42 +/- 2 MWh, and a 75 MW perfect capacity addition also returned 42 +/- 2 MWh.
Closing this for now, but feel free to reopen if you have further questions
I define two systems:
Base System:
Augmented system:
sys2 = SystemModel("Documents/PRAS-master/test/PRASBase/rts.pras")
Increase the load to get some baseline EUE:
Then attempt to calculate the EFC of the sys.generators.capacity[1]
cc_result = assess(sys, sys2, EFC{EUE}(100, "1"), SequentialMonteCarlo())
Then get the warning below:
Am I doing this right?
Thanks!