Skip to content
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

Informing the allocation algorithm about purely physical flows (MPC v0) #2016

Open
SouthEndMusic opened this issue Jan 20, 2025 · 1 comment
Assignees
Labels
allocation Allocation layer needs-refinement Issues that are too large and need refinement

Comments

@SouthEndMusic
Copy link
Collaborator

SouthEndMusic commented Jan 20, 2025

We came to the conclusion with @FaridAlavi that (basic) model predictive control could help us resolve the problem that the allocation algorithm does not currently take purely physical flows into account. These can reduce the amount of available water for the algorithm to divide, but the algorithm currently doesn't 'see' this flow because the algorithm only computes flows based on demands.

The formulation to use (with one UserDemand $U$, a bucket volume $V$ and a physical outflow $f(V)$ would be:

$$ V(t_{n+1}) = V(t_n) -f(V(t_n))-U(t_n) $$

extensible into the MPC paradigm,

$$ V(t_{n+2})=V(t_{n+1}) -f(V(t_{n+1}))-U(t_{n+1}) $$

@SouthEndMusic SouthEndMusic added allocation Allocation layer needs-refinement Issues that are too large and need refinement labels Jan 20, 2025
@github-project-automation github-project-automation bot moved this to To do in Ribasim Jan 20, 2025
@SnippenE SnippenE moved this from To do to Sprint backlog in Ribasim Feb 3, 2025
@gijsber gijsber changed the title Informing the allocation algorithm about purely physical flows Informing the allocation algorithm about purely physical flows (MPC v0) Feb 6, 2025
@gijsber
Copy link
Contributor

gijsber commented Feb 6, 2025

As discussed with Farid

Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
allocation Allocation layer needs-refinement Issues that are too large and need refinement
Projects
Status: To do
Development

No branches or pull requests

3 participants