-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Which would be the correct way to model the uncertainty from historical data? #765
Comments
Yes
This doesn't have an answer. It depends on your problem. Choose your metric to measure how "good" the policy is, and then pick the model that achieves the best policy for your problem. Note that how you model the uncertainty is a modeling choice. It's not the real word, but that doesn't matter.
Sure, you can make a policy graph with the Markov transition matrices:
but this means that when we see the realization in stage 1, we know the realization of the uncertainty in all future stages. Again, this is a modeling choice. Whether it is suitable is up to you.
I don't have an answer for you because this is problem-dependent.
No!!! Training an "optimal" policy to a poor choice of model will probably perform poorer in practice than a model with a better representation of the world trained for fewer iterations. |
Thank you very much, @odow ! I'm very excited every time I see your reply and I always learn a lot! Now I feel I have a deeper understanding on |
Now you see the problem with this approach 😄 It's up to you. You might want to pick the scenario that is most similar. Or you might realize that this isn't a very appropriate model for sequential decision making under uncertainty. |
Thank you @odow ! Thank you very much! 😀🤝🤝 But I think, if I understand correctly, perhaps this problem can be circumvented by pre-specifying some structured decision rule functions for each stage (rather than node), is that right? (Although this may be a very rough approximation). |
There are other ways to find (sub-optimal) policies for sequential decision problems, such as (linear) decision rules. SDDP.jl does not support custom decision rules, although it has come up in discussion: #696 |
I got it! |
Hi, Prof. @odow , how do you do? I'm just wondering what's the correct way to model the uncertainty from historical data when using
SDDP.jl
and some related issues.Let's take the typical hydrothermal scheduling problem as an example. Suppose in the beginning the uncertain inflow is given by its historical data of the same period (also 3 weeks) of previous$L$ years, e.g., this is a toy dataset where $L$ =6:
In order to use
SDDP.jl
, we must model the uncertain inflows as stagewise-independent random variables (is it?). I learned from the tutorial and some other related papers and my personal cognition that maybe we can generally model the uncertainty according to the following ideas:SDDP.jl
, adopt the Markov chain approach to construct an appropriate Markov process.My questions are:
SDDP.jl
support such problem formulation? Is there essential differences between it and the Bellman's optimality principle followed bySDDP.jl
? Or can they be transformed into each other?SDDP.jl
for multi-stage stochastic programming to train an optimal policy functionalBest regards!
The text was updated successfully, but these errors were encountered: