フィルターのクリア

How to smooth my optimization results?

4 ビュー (過去 30 日間)
Mathias Dirksmeier
Mathias Dirksmeier 2018 年 12 月 2 日
Dear all,
I have a very very urgent issue to solve as my thesis is due next week and my optimizer still does give me results I do not like. You can guess I become a little nervous ;)
So, I am optimizing the dispatch of storage in order minimize peaks in electricity demand of commercial or industrial clients. That basically means, that storage should charge during off-peak hours and then discharge to minimize the peaks in demand as good as possible (constrained by the size of storage and its max output).
Thereto, I apply CPLEX as a solver via MATLAB toolbox functions. My objective function looks as follows:
f_help = zeros(length(P_USE),1);
f = [f_help;1]; % Vector for linear objective function: Minimize p*x (negative x for discharged/sold energy)
The 1 at the end of the f-vector is an auxiliary variable which denotes the maximum peak after storage operation. Thus, this function only minimizes for this value. The f_help-vector denotes the whole dispatch vector. The idea behind that is quite outside the box, but now to the point.
In applying this function and some related constraints, the optimizer gives me the outcome as seen in the figure. You can see, that the pink curve drops below zero (storage discharges) even at times when there is no peak. It definitely should only discharge when there is a peak in demand. Also, the whole curve is very jumpy. It should not be!
Do you see any possibility with the solver or a smoothing routine to make the outcome more "smooth"?
I am really helpful for everything!!
Thanks,
Mathias

回答 (0 件)

カテゴリ

Help Center および File ExchangeSurrogate Optimization についてさらに検索

製品


リリース

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by