How can i use MATLAB linear programming platform(Linprog) with recurssive functions?
4 views (last 30 days)
Show older comments
Ashenafi Alemu
on 27 Jul 2014
Commented: Ashenafi Alemu
on 27 Jul 2014
I am working M.Sc. Thesis research on a load dispatch problem for Ethiopian power system that consists of mainly 15 hydroelectric power plants, 4 wind power plants, 5 geothermal plants and 2 solar power plants. The objective function bases itself on minimizing the power production cost. All types of power plants listed above have their own property and I have already formulated the model based on those properties.
Both the objective function as well as equality and non-equality constraints are all linear, discrete and deterministic. I am working for a year time with hourly resolution and using MATLAB platform to optimize the problem. The problem is already classified as large scale linear programming.
Given this information my problem is as follows:
I have a hydraulic continuity equation of the form:
V(t) =V(t-1) + In(t) – Q(t) –S(t)
Where V(t) = the reservoir level (volume) in time period t In(t),Q(t), S(t) = Inflow, Discharge and spill in time period t respectively In addition other equality and inequality constraints are included in the equation.
The decision (unknown) variables of the whole model are V, Q and S. I was attempting to use the function Linprog to solve the equation. But linprog accepts only coefficients of equation in matrix form which makes it difficult for the above equation since V(t) and V(t-1) can’t be differentiated as there is no time dimension. Is there any way I can represent such function in MATLAB linear programming platform? IF not what else can I do?
Regards Ashenafi
0 Comments
Accepted Answer
John D'Errico
on 27 Jul 2014
Edited: John D'Errico
on 27 Jul 2014
Linear programming uses linear algebra, i.e., matrices. It does not solve for a general function of time.
So discretize the problem in time, so that each time step adds additional variables. This will make the problem larger of course, since you will have a complete set of variables for each time step. That it makes the problem big may be an issue for you, but that is life.
It is why they call it research, because if it was easy, someone else would have done it already.
More Answers (0)
See Also
Categories
Find more on Least Squares in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!