Management of a hydropower system via convex duality
aa r X i v : . [ m a t h . O C ] J un Management of a hydropower system via convexduality
Kristina Rognlien Dahl ∗ October 5, 2018
Abstract
We consider the problem of managing a hydroelectric power plant sys-tem. The system consists of N hydropower dams, which all have somemaximum production capacity. The inflow to the system is some stochas-tic process, representing the precipitation to each dam. The manager cancontrol how much water to release from each dam at each time. She wouldlike to choose this in a way which maximizes the total revenue from the ini-tial time to some terminal time T . The total revenue of the hydropowerdam system depends on the price of electricity, which is also a stochasticprocess. The manager must take this price process into account whencontrolling the draining process. However, we assume that the manageronly has partial information of how the price process is formed. She canobserve the price, but not the underlying processes determining it. By us-ing the conjugate duality framework of Rockafellar [15], we derive a dualproblem to the problem of the manager. This dual problem turns out tobe simple to solve in the case where the price process is a martingale orsubmartingale with respect to the filtration modelling the information ofthe dam manager. The framework of this paper is inspired by those presented in Huseby [8]and Alais et al. [2], as both consider management of hydropower dams.We consider the problem of managing a hydroelectric power plant system.The system consists of N hydropower dams, which all have some maxi-mum production capacity. The inflow to the system is some stochasticprocess, representing the precipitation or other natural source of inflowsuch as snow melting or streams to each dam. The manager of the facilitycan choose how much water to turbine from each dam at each time. Shewould like to choose this in a way which maximizes the total revenue fromthe initial time to some terminal time T . The total revenue of the hy-dropower dam system depends on the price of electricity, which is assumedto be a stochastic process. The manager must take this price process intoaccount when controlling the draining process. Hence, the dilemma ofour dam manager is how much water she should drain at each time, whenshe must respect the natural constraints of the facility (e.g. the maxi-mum storage capacity and maximum production capacity) as well as take ∗ Department of Mathematics, University of Oslo. [email protected]. into consideration the uncertainty regarding inflow and electricity price.We apply the conjugate duality framework of Rockafellar [15] to derive adual problem to the initial problem of the dam manager. This dual prob-lem turns out to be simple to solve in the case where the price processis a martingale or submartingale with respect to the filtration modellingthe manager’s information. For a brief introduction to conjugate dualitytheory, see the Appendix A.In the paper by Huseby [8], the allocation of draining between thedifferent dams is the focus. Hence, they do not maximize the total income,but instead they aim to satisfy the demand for electricity. In addition,the techniques they use to solve the problem is completely different fromours.In Alais et al. [2], they consider a single multi-usage hydropower dam.The goal is to maximize the expected gain under a bound on the control,non-anticipativity of the draining strategy and a tourist constraint. Thisconstraint requires that the water level of the dam is high enough duringthe tourist season with a certain probability. This is a different kind ofconstraint than what we have.Chen and Forsythe [3] consider problem somewhat similar to ours, butin continuous time. They derive a Hamilton Jacobi Bellman equation,which turns out to be a partial integrodifferential equation and study anduse viscosity solutions to study its properties.In contrast, we consider a discrete time, arbitrary scenario space set-ting and use conjugate duality techniques to derive a dual problem. Tothe best of our knowledge, such methods have not been applied to hy-droelectric dam management problems before. However, in mathemati-cal finance, the use of duality methods have been extensively studied byfor Pennanen [12]- [13], Pennanen and Perkkio [14], King [10], King andKorf [11] and others over the past decade. Some advantages with dualitymethods are: • The optimal value of the dual problem gives a bound on the optimalvalue of the primal problem. • In some cases, so-called strong duality holds: The optimal primalvalue is actually equal to the optimal dual value. • The method is extremely suitable for handling various kinds of con-straints without added complexity. This is not the case for classicalstochastic control methods such as stochastic dynamic programmingand the stochastic maximum principle, see Ji and Zhou [9] for moreon this. • If the case where the problem and the constraints are linear, in thefinite scenario space case, the method reduces to linear programmingwhich can be solved efficiently using e.g. simplex or interior pointmethods. Using the simplex algorithm for solving the dual problemat the same time provides the primal optimal control variables asshadow prices of the dual constraints, see e.g. Vanderbei [18]The structure of the paper is as follows: In Section 2, we presentthe model for the hydropower dam system and the stochastic processesinvolved. We also introduce the maximization problem of the dam man-ager, and rewrite this to a more tractable form. Then, in Section 3, wechoose a suitable perturbation space and derive its dual space. Based onthis, we derive the dual problem. In a special case, this dual problemturns out to be simple to solve, so we find the dual solution in this case.
This optimal dual value gives an upper bound on the optimal value of theprimal problem. In Section 4 we discuss whether strong duality holds forour problem. We use this to discuss some computational properties of theproblem, in particular when it is simpler to solve the dual problem thanthe primal. In Section 6, we add structure to the dam system. However,despite the added complexity, the conjugate duality methods works inthe same way as before. Finally, in Appendix A, we give an overview ofconjugate duality theory for the convenience of the reader.
We consider a system consisting of N hydropower dams over a discretetime period t = 0 , , , . . . , T < ∞ . This framework is equipped withan (arbitrary) probability space (Ω , P, F ) . Related to this probabilityspace, we have several different stochastic vector processes. For each ofthe following processes, vector component i ∈ { , , . . . , N } correspondsto dam i of the facility:The electricity price process denoted by S ( t, ω ) = ( S ( t, ω ) , S ( t, ω ) , . . . , S N ( t, ω )) ∈ R N . We interpret S i ( t, ω ) as the price of electricity for dam i at time t ifscenario ω ∈ Ω is realized. See Remark 2.2 for an explaination of whywe consider (potentially) different prices for different dams. Note that wedo not make any assumptions on the structure of this process, so it canbe any discrete time stochastic process. In the following, we will usually(for ease of notation) omit writing out the ω ∈ Ω in the notation of thevarious processes. In the following, we will usually (for ease of notation)omit writing out the ω ∈ Ω in the notation of the various processes.The inflow process is R ( t, ω ) ∈ R N , and for any time t , the randomvariable R ( t ) is interpreted as the amount of precipitation and other nat-ural inflow to the dams between times t and t + 1 . The inflow is measuredin terms of units of electricity which the water corresponds to. Note thatthis can take both positive and negative values. In practice, this meansthat we allow for both positive inflow such as rain and snow melting aswell as negative “inflow” such as evaporation or natural draining of water.The amount of water in the dams is denoted by V ( t, ω ) ∈ R N . Forany time t , the random variable V ( t ) is the amount of water in the dam(measured in terms of units of electricity which the water corresponds to)at time t . Note that we must have V ( t, ω ) ≥ (since the dams cannothold a negative amount of water). In particular, the initial water level V (1) ≥ .The draining process is denoted by D ( t, ω ) ∈ R N , and for any time t ,the random variable D ( t ) is interpreted as the amount of water which isdrained from the dams between times t and t + 1 . The draining process isalso measured in terms of units of electricity which the water correspondsto. This process can be controlled by the dam manager. When the dammanager chooses D ( t ) , she does so based on her current information, whichmay only be partial. In particular, in the case where the manager has fullinformation, she observes S ( t ) , V ( t ) and R ( t − as well as all previousvalues of these processes. When selling the electricity from the drainedwater, the manager will get the unknown price S ( t + 1) . Note also thatthe manager must choose how much to drain in a period before knowinghow large the inflow will be over the same period of time. An illustration of the order which information is revealed and choicesare made is shown in Figure 1. q q q V (1) S (1) V (2) S (2) R (1) V (3) S (3) R (2) D (1) D (2) t = 1 t = 2 t = 3 . . . Figure 1: The order of information.
Remark 2.1
There is an ambiguity in the way we have chosen to in-terpret the draining process. As an alternative, one could say that thedraining happens instantaneously, and hence D ( t ) , the water drained attime t could be sold at the price S ( t ) . This kind of interpretation wouldeliminate some of the uncertainty of the dam manager. However, notthat the manager still has to take into consideration that the water shedrains now may have been better off being saved for a later time whenthe electricity price is potentially higher. Hence, the electricity price is animportant source of uncertainty in this case as well. Remark 2.2
Note that we seemingly consider N different prices of elec-tricity, since S ( t ) ∈ R N . This essentially means that we consider differentprices for the different dams. The reason for doing this is that the differentprices can be used to reflect different technologies in the dams, different lo-cations of water relative to the turbines etc. Hence, this can be useful eventhough the actual market price of electricity is just one price. If the damsare equal, one can just let the price vector S ( t ) = ( S ( t ) , S ( t ) , . . . , S ( t )) ,where S ( t ) is the market price of electricity.An overview of the notation is shown in Table 2.Since water cannot be turbined infinitely fast, we also have a maximalproduction capacity for the different dams. These maximal productioncapacities are the components of the vector b = ( b , b , . . . , b N ) . In addi-tion, the dams have a finite capacity to hold water without flooding, sowe let the vector m = ( m , m , . . . , m N ) be the maximal amount of waterin the dams. See Figure 3 for an illustration of the dam system.The information of the dam manager is given by a filtration ( G t ) Tt =1 which can be a subfiltration of the full information filtration, i.e., themanager may only have partial information. Recall that the full infor-mation filtration, denoted ( F t ) Tt =1 is the one generated by S ( t ) , V ( t ) and S ( t ) Electricity price R ( t ) Inflow process V ( t ) Amount of water in dams D ( t ) Draining process (control variable) m Maximum amount of water in dams b Maximal production capacitiesFigure 2: An overview of the notation.4onvex duality and hydropowerDam Dam . . . Dam N ♠ ♠ ♠ Turbine Turbine Turbine Figure 3: The hydropower system: N separate dams. R ( t − . Hence, G t ⊆ F t for all times t = 1 , , . . . , T . We assume that F T = G T = Ω , i.e., that at the terminal time the true scenario is revealedto the manager. Note that this concept of partial information is quitegeneral. For instance, the dam manager may have delayed price informa-tion, incomplete information about the inflow to the dams or the priceformation. In Example 2.3 we consider such a situation.Let D G := { all {G t } -adapted processes } . The problem of the dam manager is as follows: max { D(t) } E [ P T − t =1 D ( t ) · S ( t + 1) + α V ( T ) · S ( T )] such that V ( t + 1) = V ( t ) + R ( t ) − D ( t ) , t = 1 , . . . , T − a.s. , D ( t ) ≤ V ( t ) ≤ m , t = 1 , . . . , T − a.s. , ≤ D i ( t ) ≤ b i , i = 1 , . . . , N and t = 1 , . . . , T − a.s.(1)where we maximize over all drain processes D ∈ D G , the initial water level V (1) is given and α is a constant. Note that the constant α gives weightto the terminal value of the water in the reservoir. Note that it can beany value, but it is natural to have α ∈ (0 , . This is natural because theremaining water should have some value, but perhaps not S ( T ) · V ( T ) ,since it cannot be turbined immediately.That is, she wants to maximize the total revenue from the hydropowerdams while not draining more water than what is available at any time(given the development of the water level) while also respecting the max-imum production capacities and maximum water levels of the differentdams and not draining more water than what’s available at each time.Note that problem (1) is an infinite linear programming problem, i.e.,the problem is linear with infinitely many constraints and variables. Formore on infinite programming, see for instance Anderson and Nash [1]and for a numerical method, see e.g. Devolder et al. [6]. However, if Ω is finite, (1) is a linear programming problem. In this case, the problemcan be solved numerically using the simplex algorithm or an interior pointmethod, see for example Vanderbei [18] Example 2.3
This example is a twist on the one in Dahl [4].
In this example, we illustrate a kind of partial information which is notdelayed information. Although the results of this paper hold when Ω is anarbitrary set, we consider a situation where Ω is finite. This simplifies theintuition and allows for illustration via scenario trees. For computationalpurposes and practical applications, this is also the most relevant.Consider times t = 1 , , , Ω := { ω , ω , . . . , ω } and a hydropowerfacility with only one dam. The inflow process to the dam is R ( t, ω ) , andthe electricity price process is S ( t, ω ) . Let R ( t, ω ) := X ( t, ω ) + ξ ( t, ω ) , i.e., the inflow process is composed of two other processes, X and ξ . Forinstance, X ( t ) may be the precipitation, while ξ ( t ) is the inflow due tosnow-melting.The seller does not observe these two processes, only the current inflow.The following scenario trees show the development of the processes X and ξ , as well as the inflow process observed by the seller. ✉ ✉✉ ✉✉✉✉✉ (cid:0)(cid:0)(cid:0)(cid:0)❅❅❅❅✦✦✦✦❛❛❛❛✧✧✧✧❜❜❜❜ Ω = { ω , ω , . . . , ω } ξ = 3 , { ω , ω , ω } ξ = 5 , { ω , ω } ω ω ω ω ω q q q t = 0 t = 1 t = T = 2 Figure 4: The process ξ ✉ ✉✉ ✉✉✉✉✉ (cid:0)(cid:0)(cid:0)(cid:0)❅❅❅❅✦✦✦✦❛❛❛❛✧✧✧✧❜❜❜❜ Ω = { ω , ω , . . . , ω } X = 4 , { ω , ω } X = 2 , { ω , ω , ω } ω ω ω ω ω q q q t = 0 t = 1 t = T = 2 Figure 5: The process X Full information in this market corresponds to observing both processes X and ξ (as well as full information corresponding to the price process S ( t ) ), i.e., the full information filtration (w.r.t. the inflow) ( F t ) t is thesigma algebra generated by X and ξ , σ ( X, ξ ) . However, the filtration ob-served by the seller ( G t ) t , generated by the inflow process R ( t ) , is (strictly)smaller than the full information filtration. For instance, if you observethat ξ (1) = 3 and X (1) = 4 , you know that the realized scenario is ω .However, this is not possible to determine only through observation of theinflow process R ( t ) . Hence, this is an example of a model with hiddenprocesses, which is a kind of partial information that is not delayed infor-mation. ✉ ✉✉✉ ✉✉✉✉✉ (cid:0)(cid:0)(cid:0)(cid:0)❅❅❅❅✦✦✦✦❛❛❛❛✏✏✏✏❜❜❜❜ R = 6 , Ω = { ω , ω , . . . , ω } R = 7 , { ω , ω } R = 9 , { ω , ω } R = 5 , { ω } R = 3 , ω R = 8 , ω R = 9 , ω R = 7 , ω R = 4 , ω q q q t = 0 t = 1 t = T = 2 Figure 6: The inflow process R ( t ) It turns out that we can rewrite the problem in such a way that weremove the V ( t ) process. Since V ( t + 1) = V ( t ) + R ( t ) − D ( t ) , t =1 , . . . , T − , we have: ∆ V ( t ) := V ( t + 1) − V ( t )= R ( t ) − D ( t ) . Hence, V ( t ) = V ( t ) − V ( t −
1) + V ( t − − V ( t −
2) + V ( t − − . . . − V (2) + V (2) − V (1) + V (1)= P t − s =1 ∆ V ( s ) + V (1)= P t − s =1 ( R ( s ) − D ( s )) + V (1) . (2)Therefore, problem (1) can be rewritten: max D E [ P T − t =1 D ( t ) · S ( t + 1) + α S ( T ) · (cid:16) P T − s =1 ( R ( s ) − D ( s )) + V (1) (cid:17) ] such that D ( t ) ≤ P t − s =1 ( R ( s ) − D ( s )) + V (1) ≤ m , t = 1 , . . . , T − a.s. , ≤ D i ( t ) ≤ b i , i = 1 , . . . , N and t = 1 , . . . , T − a.s. (3) where P s =1 . . . = 0 , so D (1) ≤ V (1) ≤ m . Also, as previously, themaximization is over all D ∈ D G . Remark 2.4
In the current framework, we consider N different hydro-dams, but since they are not connected to one another and there is aseparate maximal production capacity for each dam, we would not loseanything by considering just one dam instead. However, in Section 6, wewill add network structure connecting the dams. To have a consistentnotation, we choose to formulate the problem in vector form from thebeginning.Note also that if the hydropower facility has a maximal total produc-tion capacity C < N ( m + m + . . . + m N ) , we could not just considerone dam instead of N dams. In this section, we will use the conjugate duality framework of Rockafel-lar [15] to derive a dual problem to the rewritten version of the manager’sproblem (2). See the Appendix A for an overview of this theory.
Remark 3.1
The main idea of conjugate duality is to represent the orig-inal, or primal , problem as one half of a minimax problem where a saddlepoint exists. The other half of this minimax problem is called the dualproblem . In order to do this, we introduce a function K ( D , y ) , called theLagrange function , depending on some perturbation variables y such thatthere exists a saddle point for this function. The function K ( D , y ) is cho-sen such that our primal problem is sup D ∈D G inf y ∈ Y K ( D , y ) . Then, thedual problem is inf y ∈ Y sup D ∈D G K ( D , y ) , and this optimal value boundsour primal problem (from above). Under some conditions, these optimalprimal and dual values coincide (and are attained in the saddle point of K ( D , y ) ). In this case we say that strong duality holds. For a more de-tailed presentation of conjugate duality theory, see the Appendix A andRockafellar [15].Let p ∈ [1 , ∞ ) , and define the perturbation space U = { u ∈ L p (Ω , F , P : R T − N | u = ( u γ , u v , u λ , u w ) } where writing u = ( u γ , u v , u λ , u w ) , u i ( ω ) ∈ R ( T − N for i = γ, v, λ, w , isto highlight the different parts of the permutation vector correspondingto the constraints of the manager’s problem (2).Corresponding to the perturbation space U , we define the dual space Y = U ∗ = { y ∈ L q (Ω , F , P : R T − N | y = ( γ, v , λ, w ) } where the vector of dual variables is y = ( γ, v , λ, w ) . Here, γ is the vectorof γ i,t , i = 1 , . . . , N, t = 1 , . . . , T − and similarly for v , λ and w . Notethat the components of y and u correspond to one another.We define a bilinear pairing between the dual spaces U and Y by h u , y i = E [ u · y ] , where h· , ·i denotes the Euclidean inner product. Theperturbation function F : D G × U → R is defined in the following way: F ( D , u ) = E [ P T − t =1 D ( t ) · S ( t +1)+ α S ( T ) · (cid:16) P T − s =1 ( R ( s ) − D ( s ))+ V (1) (cid:17) ] if D ( t ) − b ≤ u v , − D ( t ) ≤ u γ , D ( t ) − P t − s =1 ( R ( s ) − D ( s )) − V (1) ≤ u λ,t for t = 1 , . . . , T − , P t − s =1 ( R ( s ) − D ( s )) + V (1) − m ≤ u w,t for t = 1 , . . . , T − (4)and F ( D , u ) = −∞ otherwise.Then, the Lagrange function is K ( D , y ) = E [ P T − t =1 D ( t ) · S ( t + 1) + α S ( T ) · (cid:16) P T − t =1 ( R ( t ) − D ( t )) + V (1) (cid:17) ]+ E [ P T − t =1 γ · D ( t )] + E [ P T − t =1 v t · ( b − D ( t ))]+ E [ P T − t =1 λ t · ( V (1) + P t − s =1 ( R ( s ) − D ( s )) − D ( t ))]+ E [ P T − t =1 w t · (cid:0) m − V (1) − P t − s =1 ( R ( s ) − D ( s )) (cid:1) ] The dual objective function is g ( y ) = sup D K ( D , y )= E [ α V (1) · S ( T ) + P T − t =1 V (1) · λ t + α P T − t =1 S ( T ) · R ( t ) + P T − t =1 v t · b + P T − t =1 w t · (cid:0) m − V (1) − P t − s =1 R ( s ) (cid:1) + P T − t =1 P t − s =1 λ t · R ( s )]+ P T − t =1 P Ni =1 sup D i ( t ) ˜ F ( D i ( t )) where λ, v , γ, w ≥ and ˜ F ( D i ( t )) = E [ D i ( t ) { S i ( t +1) − αS i ( T )+ γ i,t − v i,t − λ i,t + T − X s = t +1 (cid:0) w i,s − λ i,s (cid:1) } ] From Lemma 2.1 and 2.2 in Dahl [4], it follows that the dual problemis equivalent to C + inf y ≥ P T − t =1 E [ λ t · { V (1) + P t − s =1 R ( s ) } + v t · b + w t · { m − V (1) − P t − s =1 R ( s ) } ] such that R A { S ( t + 1) − α S ( T ) + γ t − v t − P T − s = t λ s + P T − s = t +1 w s } dP = ∀ A ∈ G t (5)where C := αE [ S ( T ) · V (1) + P T − t =1 S ( T ) · R ( t )] and the constraint holdsfor all t = 1 , . . . , T − . The constraint can be rewritten: E [ S i ( t +1) |G t ] − αE [ S i ( T ) |G t ] = y i,t − γ i,t + λ i,t + E [ T − X s = t +1 (cid:0) λ i,s − w i,s (cid:1) |G t ] , where the constraint holds for t = 1 , . . . , T − , i = 1 , . . . , N , and y i,t and γ i,t are G t measurable. In words: The difference between the observedprice of electricity and the expected value of the terminal price given thepresent information is equal to y i,t − γ i,t + λ i,s + E [ P T − s = t +1 (cid:0) λ i,s − w i,s (cid:1) |G t ] ,where v , γ, λ, w ≥ .Note that from the conjugate duality theory, see Rockafellar [15], theoptimal value of the dual problem is an upper bound to the primal maxi-mization problem. So, the optimal value of the hydroelectric dam system is bounded from above by the optimal value of the minimization prob-lem (5).In some special cases, the dual problem is simple to solve. Now, assumethat R ( t ) ≥ a.s. for all times t , i.e., that there is no natural draining orevaporation from the dams and assume that α = 1 . Also, assume that theelectricity price process S ( t ) is a martingale w.r.t. the partial informationfiltration ( G t ) T − t =1 and that m − V (1) − t − X s =1 R ( s ) ≥ a.s. (6)for all times t = 1 , . . . , T − . Note that this final assumption says thatalmost surely, none of the dams will flood even without draining any water.Since the price process is a martingale, we know that E [ S ( t + 1) |G t ] = E [ S ( T ) |G t ] . Hence, because of assumption (6), we see that the optimal solution ofthe dual problem is to choose λ = v = γ = w = . Due to the martingaleproperty, this choice implies that the constraints are satisfied and the dualoptimal value, d ∗ , is the lowest it can possibly be: d ∗ = E [ S ( T ) · V (1) + T − X t =1 S ( T ) · R ( t )] . If assumption (6) still holds, but the electricity price is a submartingalewith respect to the manager’s information, it is also easy to see how tofind an optimal dual solution. In this case, we know that E [ S ( t + 1) |G t ] ≤ E [ S ( T ) |G t ] . Therefore, we can let λ = v = w = 0 and γ t = E [ S ( T ) − S ( t ) |G t ] for all t = 1 , . . . , T − . For this choice of v = ( λ, v , γ, w ) , we getthe same optimal dual value as in the martingale case.In the case where the price process is a supermartingale w.r.t. thefiltration ( G t ) T − t =1 , it is not obvious what the optimal dual solution willbe. In this case, we cannot define γ i,t as in the submartingale case, sincewe must have γ i,t ≥ . The same is true if assumption (6) does not hold.Note that in the case where assumption (6) holds and the price processis either a martingale or a submartingale, the constraint vectors b and m (on the maximal production capacities and maximal levels of waterin the dams respectively) do not affect the optimal value of the dualproblem. The reason for this is as follows: Consider the case where theprice process is a martingale. In this case, the manager always expects thecurrent price to be the same as the terminal time price, given her currentinformation. Because of assumption (6), the manager does not expect toworry about the dams flooding, so she can just wait until the terminaltime, and then be left with the remaining water value. This value is d ∗ .Due to the martingale assumption, she does not expect to lose moneywith this strategy. The argument in the submartingale case is completelyparallel. However, since the price process is a submartingale, the manageractually expects to gain money based on this. Remark 3.2
As mentioned, we could also consider the situation wherethe draining of water D ( t ) happens instantaneously, so the electricity canbe sold at the known price S ( t ) instead of having to be sold at the nexttime step for S ( t + 1) . However, the calculations in this case becomecompletely identical to those above, except that S ( t + 1) is replaced by S ( t ) throughout. If the price process ( S ( t )) Tt =1 is ( G t ) Tt =1 -adapted, this implies that E [ S ( t ) |G t ] = S ( t ) . Hence, we get a slight simplification of theprevious expressions. However, the case where the dual problem is simpleto solve is the same as before. Another natural question is when strong duality holds, i.e., when is theoptimal value of problem (1) equal to the optimal value of the dual prob-lem (5)? In the case where Ω is finite, the conjugate duality techniquereduces to linear programming (LP) duality. Hence, we know from the LPstrong duality theorem (see e.g. Vanderbei [18]) that there is no dualitygap in this case (since the primal problem clearly has a feasible solution:Just drain whatever flows into the dam). This means that the optimalvalues of problems (1) and (5) are equal in the finite Ω case.We now turn to the case of arbitrary (infinite) Ω , which is more com-plicated. Remark 4.1
The case of general Ω is clearly interesting from a theoret-ical point of view. It is also relevant for applications. For example, itmay be difficult to choose just a few possible future scenarios to study. Inthis case, considering e.g. a set of scenarios which is normally distributedcan be interesting. For instance, such an assumption could reflect thatmost of the scenarios are somewhere in the middle, but in some cases therealized scenario is very good or very bad.In the remaining part of this section, we make some weak additionalassumptions, all of which are very natural: Assumption 4.2
Assume that: • The price process S ( t ) is bounded on [0 , T ] . • The inflow process R ( t ) is bounded on [0 , T ] and R i ( t ) > for alltimes t ( so there is always some inflow to the dam ) . • The initial water level of the dam is bounded, i.e. V (1) < ∞ . Note that most of the theory on conjugate duality is formulated forconvex functions. However, the results can readily be rewritten to theconcave case. Since our primal problem (7) is a maximization problem,we consider the concave version of the theory. By using this theory, wecan prove that there is no duality gap for our problem:
Theorem 4.3
There is no duality gap for our problem, i.e., the optimalvalue of problem (1) is equal to the optimal value of problem (5) . Also,there exists a ¯ y ∈ Y which solves the dual problem.Proof. It follows from Example 1 in Pennanen [14] and Example 14.29in Rockafellar and Wets [17] that our choice of − F is in fact a convexnormal integrand, and in particular, it is convex. Hence, the perturbationfunction F (which we have chosen) is concave.From Theorem 17 and Theorem 18 a) in Rockafellar [15] rewritten tothe concave case, we find that if F is concave and there exists a D ∈ D G such that the function u F ( D , u ) is bounded below on a neighborhoodof , the primal and dual optimal values coincide and there exists a ¯ y ∈ Y which solves the dual problem.Since we know that our choice of F is concave, the theorem will followif we can find D ∈ D G such that the function u F ( D , u ) is boundedbelow on a neighborhood of . The only possible problem is the case where F ( D , u ) = −∞ . Thisfollows because in the other case, F is bounded from below by defini-tion (see equation (4)) and the assumptions on the stochastic processesinvolved (see Assumption 4.2).This means that we have to find a { D ( t ) } t ∈ [0 ,T ] such that for all u in a neighborhood of , we avoid the case where F ( D , u ) = −∞ . Thatmeans that for our choice of D ( t ) , the constraints of equation (4) haveto be satisfied for all such u . However, this can be achieved by choosing D i ( t ) = min { R i ( t ) − ǫ, V i (1) − ǫ, b i − ǫ } , where epsilon is chosen to beso small that this D i ( t ) > for all i = 1 , . . . , N, t = 1 , . . . , T . Then, allthe constraints of equation (4) are satisfied for all u in an ǫ -neighborhoodaround , and hence F is bounded below on this neighborhood.Hence, it follows that there is no duality gap, i.e., that the optimalvalue of the primal problem (1) is equal to the optimal value of the dualproblem (5). (cid:3) Remark 4.4
A weakness of the solving the dual problem instead of theprimal problem is that we do not get the optimal drain process directlyfrom the dual. However, in practice when Ω is finite, one could for in-stance solve the dual problem by using a dual simplex algorithm. Such analgorithm would provide the optimal draining strategy directly as shadowprices of the dual constrains.In the case where Ω is finite, it is typically more efficient to solvethe dual problem than it is to solve the primal (from a computationalpoint of view) when the number of constraints in the primal problem isgreater than the number of variables. This is the case for the our problem:The number of variables is N ( T − | Ω | , while the number of constraintsis N ( T − | Ω | . Hence, there are N ( T − | Ω | more constraints thanvariables. For a large T and | Ω | , this is substantial and it will be fasterto use the dual simplex algorithm than using the primal simplex method. Remark 4.5
Note that instead of having the terminal value of waterequal to α S ( T ) · V ( T ) , we could consider some function K ( V ( T )) , K : R N → R of the terminal water level as in Alais et al. [2]. However, sinceour solution technique eliminates the water level process { V ( t ) } , we getthat K ( V ( T )) = K (cid:0) T − X s =1 ( R ( s ) − D ( s )) + V (1) (cid:1) . In order to be able to use the solution method we have presented, we needto be able to separate out D i ( t ) in order to separate the maximizations inorder to derive the dual value function. Hence, we need K to be a linearfunction. In this section, we consider the same problem as in Section 2, but insteadof having constraints on the maximal production capacity of each damindividually, we introduce a constraint on the total production of thewhole hydro-dam system. Hence, we can imagine that the system hasonly one common turbine for all the dams, such as in Figure 7, instead ofhaving N different turbines as in Figure 3. Dam . . . Dam N ❅❅❅❅❅❅❅❅❘❇❇❇❇❇❇◆ (cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)✠ ✚✙✛✘ Common turbineFigure 7: The hydroelectric dam system: Constrained maximal total production
This means that the question of how to distribute the production be-tween the dams becomes important. This is similar to the problem inHuseby [8], however the maximization objective in our paper is differentfrom the one in [8], and our framework is more general.The new problem of the dam manager is: max { D(t) } E [ P T − t =1 D ( t ) · S ( t + 1) + α V ( T ) · S ( T )] such that V ( t + 1) = V ( t ) + R ( t ) − D ( t ) , t = 1 , . . . , T − a.s. , D ( t ) ≤ V ( t ) ≤ m , t = 1 , . . . , T − a.s. , ≤ D i ( t ) , i = 1 , . . . , N and t = 1 , . . . , T − a.s. P Ni =1 D i ( t ) ≤ ˜ C, t = 1 , . . . , T − a.s. (7)where, like previously, we maximize over all drain processes D ∈ D G , theinitial water level V (1) is given and α, ˜ C are constants. Note that theonly difference between problems (1) and (7) is that the maximum pro-duction constraint on each dam is replaced by a maximal total productionconstraint for the whole facility (the final constraint of problem (7)).Note that there are ( N − T − | Ω | more constraints in problem (7)than there are in problem (1), but the two problems have the same numberof decision variables. Hence, from the comments after Remark 4.4, we seethat from a computational point of view, using a dual method is lessprofitable in this case, than for our original problem (1). However, sincethere are N ( T − | Ω | variables and (3 N + 1)( T − | Ω | constraints in (7),dual methods are still faster than primal methods.Problem (7) can be rewritten in the same way as problem (1) in Sec-tion 2 by eliminating the water level process. The rewritten problem is max D E [ P T − t =1 D ( t ) · S ( t + 1) + α S ( T ) · (cid:16) P T − s =1 ( R ( s ) − D ( s )) + V (1) (cid:17) ] such that D ( t ) ≤ P t − s =1 ( R ( s ) − D ( s )) + V (1) ≤ m , t = 1 , . . . , T − a.s. , ≤ D i ( t ) , i = 1 , . . . , N and t = 1 , . . . , T − a.s. P Ni =1 D i ( t ) ≤ ˜ C, t = 1 , . . . , T − a.s. (8) Like previously, the maximization is over all D ∈ D G .The dual problem can be derived in just as in Section 3. We omit writ-ing out all details, as the approach is nearly identical to the one alreadypresented.The Lagrange function is K ( D , v ) = E [ P T − t =1 D ( t ) · S ( t + 1) + α S ( T ) · (cid:16) P T − t =1 ( R ( t ) − D ( t )) + V (1) (cid:17) ]+ E [ P T − t =1 γ · D ( t )] + E [ P T − t =1 v t ( ˜ C − + P Ni =1 D i ( t ))]+ E [ P T − t =1 λ t · ( V (1) + P t − s =1 ( R ( s ) − D ( s )) − D ( t ))]+ E [ P T − t =1 w t · (cid:0) m − V (1) − P t − s =1 ( R ( s ) − D ( s )) (cid:1) ] The dual objective function is g ( v ) = sup D K ( D , v )= E [ α V (1) · S ( T ) + P T − t =1 V (1) · λ t + α P T − t =1 S ( T ) · R ( t ) + ˜ C P T − t =1 v t + P T − t =1 w t · (cid:0) m − V (1) − P t − s =1 R ( s ) (cid:1) + P T − t =1 P t − s =1 λ t · R ( s )]+ P T − t =1 P Ni =1 sup D i ( t ) ˜ F ( D i ( t )) where λ, v , γ, w ≥ and ˜ F ( D i ( t )) = E [ D i ( t ) { S i ( t +1) − αS i ( T )+ γ i,t − v t − λ i,t + T − X s = t +1 (cid:0) w i,s − λ i,s (cid:1) } ] From Lemma 2.1 and 2.2 in Dahl [4], it follows that the dual problemis equivalent to C + inf y ≥ P T − t =1 E [ λ t · { V (1) + P t − s =1 R ( s ) } + ˜ C P T − t =1 v t + w t · { m − V (1) − P t − s =1 R ( s ) } ] such that R A { S i ( t + 1) − αS i ( T ) + γ i,t − v t − P T − s = t λ s + P T − s = t +1 w i,s } dP = ∀ A ∈ G t ,i = 1 , . . . , N, (9)where C := αE [ S ( T ) · V (1) + P T − t =1 S ( T ) · R ( t )] and the constraint holdsfor all t = 1 , . . . , T − .Note that for each time t , the same variable v t is in all of the dual con-straints (that is, for i = 1 , . . . , N ). This is the main difference between theoriginal dual problem (5) and the dual problem (9) for the total maximumproduction constraint, and provides less flexibility for the dam manager.In the finite scenario space case, where we know that strong duality holds,for ˜ C = P Ni =1 b i , this implies that the optimal value of problem (7) forthe total production constraint is less than or equal the optimal value forproblem (1) for the individual dam constraints. This is what we wouldexpect.Also, note that in the special case discussed after problem (5), the newdual problem (9) is also simple to solve, and the solution is the same asthe one found in Section 3.Again, we can prove that strong duality holds in the arbitrary Ω casefor problems (7) and (9) in the same way as in Section 4. Like previously,in the finite scenario space case, we get strong duality directly from theLP duality theorem (or as a special case of the strong duality proof ofSection 4). Dam ♠ ♠ Turbine Turbine ❍❍❥❅❅❅❅❘ ❅❅❘ OceanFigure 8: The hydroelectric dam system: Transfer of water between dams.
To make our problem more realistic, we add a network structure to themodel. To simplify, we consider two dams placed after one another asshown in Figure 8. The first dam lies above the second one. Hence, wecan release water from the first dam to the second dam, but not the otherway around. Both the dams have turbines with some given maximumcapacities. In addition, from the second dam, we can choose to releaseexcess water into the ocean if the dam is about to flood. This cannot bedone directly from dam (only indirectly by first transferring the waterto dam ) and then releasing it.The water from each dam which is released through the respectiveturbine at time t is, like before, denoted by D i ( t ) , i = 1 , , t = 1 , , . . . , T − . The water transferred from dam to dam is denoted by ¯ T ( t ) , t =1 , , . . . , T − (the T stands for “transfer”). Let M ¯ T > be a given realnumber. We require that ≤ ¯ T ≤ M ¯ T , i.e., one can maximally transfer M ¯ T units of water from dam to dam at each time.The amount of water let out from dam into the ocean at time t isdenoted by O ( t ) , t = 1 , , . . . , T − (the O stands for “out”). Let N O > be a real number We require that ≤ O ( t ) ≤ N O , i.e., that there is amaximum amount of water which can be released at each time.We want to study the same problem as in Section 2, but adapted to ournew system setting. The problem can be written similarly as in Section 2,however we need to add the new constraints on ¯ T ( t ) , O ( t ) and take intoaccount that the dynamics of the water levels in the dams have changeddue to the added network structure: max { D(t) , ¯ T ,O } E [ P T − t =1 D ( t ) · S ( t + 1) + α V ( T ) · S ( T )] such that V ( t + 1) = V ( t ) + R ( t ) − D ( t ) − ¯ T ( t ) , t = 1 , . . . , T − a.s. ,V ( t + 1) = V ( t ) + R ( t ) + ¯ T ( t ) − D ( t ) − O ( t ) , t = 1 , . . . , T − a.s. , ≤ D ( t ) ≤ b , D ( t ) ≤ V ( t ) ≤ m , t = 1 , . . . , T − a.s. ≤ ¯ T ( t ) ≤ M ¯ T , ≤ O ( t ) ≤ N , t = 1 , . . . , T − a.s.(10)Note that the processes { ¯ T ( t ) } and { O ( t ) } are controls, i.e., they can bechosen by the dam manager. Just as for the drain processes D ( t ) and D ( t ) , we assume that { ¯ T ( t ) } and { O ( t ) } are adapted to the informationfiltration G of the dam manager.It turns out that we can use the same approach as in Sections 2-3to rewrite problem (10) and then derive the corresponding dual problem.However, note that due to the system structure, we now have ∆ V ( t ) = V ( t + 1) − V ( t )= R ( t ) − D ( t ) − ¯ T ( t ) . Similarly, ∆ V ( t ) = R ( t ) + ¯ T ( t ) − D ( t ) − O ( t ) . Hence, by the samekind of calculations as in (2), we find that V ( t ) = V (1) + P T − t =1 { R ( t ) − ¯ T ( t ) − D ( t ) } V ( t ) = V (1) + P T − t =1 { R ( t ) + ¯ T ( t ) − D ( t ) − O ( t ) } . (11)By proceeding precisely as in Section 3, we can derive the correspond-ing perturbation function, Lagrange function and dual objective function.We omit writing out the perturbation function as it is lengthy and verysimilar to the one in Section 3. The Lagrange function is: K ( D , ¯ T , O, y ) = E [ P T − t =1 D ( t ) · S ( t + 1) + α S ( T ) · V ( T )]+ E [ P T − t =1 v t · ( b − D ( t ))] + E [ P T − t =1 λ t · ( V ( t ) − D ( t ))]+ E [ P T − t =1 w t · (cid:0) m − V ( t ) (cid:1) ] where V ( t ) should be replaced with the expressions in equation (11) to geta Lagrange function only depending on the control processes D ( t ) , ¯ T ( t ) , O ( t ) ,the input processes R ( t ) , S ( t ) and the initial water levels in the dams V (1) .The dual objective function is g ( y ) = sup D K ( D , y )= E [ α V (1) · S ( T )] + P T − t =1 E [ V (1) · λ t + α S ( T ) · R ( t ) + v t · b + v ¯ T ( t ) M ¯ T + v O ( t ) N O + w t · (cid:0) m − V (1) − P t − s =1 R ( s ) (cid:1) + P t − s =1 λ t · R ( s )]+ P T − t =1 { sup ¯ T ( t ) ¯ K ( ¯ T ( t )) + sup O ( t ) G ( O ( t )) + P Ni =1 sup D i ( t ) ˜ F ( D i ( t )) } where λ, v , γ, w ≥ and for i = 1 , , ˜ F ( D i ( t )) = E [ D i ( t ) { S i ( t + 1) − αS i ( T ) + γ i,t − v i,t − λ i,t + P T − s = t +1 (cid:0) w i,s − λ i,s (cid:1) } ] , ¯ K ( ¯ T ( t )) = ¯ T ( t ) { α ( S ( T ) − S ( T )) + P t − s =1 [ λ (2) s − λ (1) s ] + P t − s =1 [ w (2) s − w (1) s ]+ γ ¯ T ( t ) + v ¯ T ( t ) } ,G ( O ( t )) = O ( t ) {− αS ( T ) + P t − s =1 w (2) s − P t − s =1 λ (2) s + γ O ( t ) − v O ( t ) } . From Lemma 2.1 and 2.2 in Dahl [4], it follows that the dual problemis equivalent to C + inf y ≥ P T − t =1 E [ λ t · { V (1) + P t − s =1 R ( s ) } + v ¯ T ( t ) M ¯ T + v O ( t ) N O + v t · b + w t · { m − V (1) − P t − s =1 R ( s ) } ] such that R A { S ( t + 1) − α S ( T ) + γ t − v t − P T − s = t λ s + P T − s = t +1 w s } dP = ∀ A ∈ G t , R A { α ( S ( T ) − S ( T )) + P t − s =1 [ λ (2) s − λ (1) s ] + P t − s =1 [ w (2) s − w (1) s ]+ γ ¯ T ( t ) + v ¯ T ( t ) } dP = 0 for all A ∈ G t , R A {− αS ( T ) + P t − s =1 w (2) s − P t − s =1 λ (2) s + γ O ( t ) − v O ( t ) } dP = 0 for all A ∈ G t . (12)where C := αE [ S ( T ) · V (1) + P T − t =1 S ( T ) · R ( t )] and the constraints holdfor all t = 1 , . . . , T − .Note that the duality approach still works precisely as in Section 3,despite the added complexity of the structure between the dams. Thesame would be true for alternative system structure between the dams.The general framework of conjugate duality allows up to upper bound ourproblem for all such structures. However, if the system structure is verycomplex, the dual problem will also be more complex. In problem (12),we see that the added complexity leads to two extra constraints (corre-sponding essentially to the two added control variables). In addition, thedual objective function has two extra terms added compared to the dualproblem (5) of Section 3. However, these are of a very simple form.Note also that in problem (5), the constraints are fairly simple becauseconstraint i only depends on S i ( t ) . This means that the constraints areall separate. This is natural, as the dams are also assumed to be detachedfrom one another. In problem (12), because transferring water betweenthe dams is possible, we see that this is reflected by the fact that the dualconstraints are connected (f.ex. both S ( T ) and S ( T ) are a part of thesecond constraint in equation (12)).Like before, the dual problem is simple to solve in some special cases.We assume that R ( t ) ≥ for all times t (i.e., there is no natural draining orevaporation from the dams) and assume that α = 1 . Also, assume that theelectricity price process S ( t ) is a martingale w.r.t. the partial informationfiltration ( G t ) T − t =1 and that the dams’ technologies are identical, so S ( t ) = S ( t ) for all t = 1 , . . . , T − . Finally, assume that m − V (1) − t − X s =1 R ( s ) ≥ a.s. (13)for all times t = 1 , . . . , T − (i.e., almost surely, none of the dams will floodeven if we do not drain any water). Since the price process is a martingaleand because of assumption (13), we see that the optimal solution of thedual problem is to choose λ = v = γ = w = . Due to the martingaleproperty, this choice implies that the constraints are satisfied and the dualoptimal value, d ∗ , is the lowest it can possibly be: d ∗ = E [ S ( T ) · V (1) + T − X t =1 S ( T ) · R ( t )] . Note that in this case there is no difference in the optimal solution ofproblem (5) and problem (12). However, this is quite natural due to thestrict assumptions made in order to derive this solution. In a completely corresponding way as in Section 4, we can prove that strong duality holdsfor this modified setting. Hence, the optimal value of problem (12) isequal to the optimal value of the original problem (10).
Remark 6.1
As an alternative to the duality method, we could try touse a more direct approach and solve the primal problem (10) directly.The natural idea would be to use dynamic programming. However, theconstraints in problem (1) complicate this method significantly. Accordingto Dohrman and Robinett [7], even in the deterministic case, inequalityconstraints such as the those in equation (1), demand more sophisticatedmethods than unconstrained or equality constrained problems. One com-plicating factor is to determine which of the constraints are binding (i.e.,hold with equality) in the optimum.In Dahl and Stokkereit [5], a method combining Lagrange duality andsome method of stochastic control, for instance dynamic programming, isderived. However, this approach is based on having equality constraints,and the proofs of that paper no longer work when considering inequalityconstraints instead. As already mentioned, in the case where the scenariospace Ω is assumed to be finite, the primal problem (1) is a linear pro-gramming problem which can be solved efficiently by well-known methods(see for example Vanderbei [18]). Hence, the difficulty is to handle thecase where Ω is not finite.In the deterministic case, there are ways to overcome this problemand find the optimal control under the constraints; active set theory,projected Newton methods or interior point methods, see Dohrman andRobinett [7]. In particular, for “box”-type constraints, projected Newtonalgorithms have been shown to be efficient. However, to the best of ourknowledge, such algorithms have not been generalized to the stochasticsetting. A Conjugate duality and paired spaces
This appendix is almost the same as the one in Dahl [4], and is includedfor the reader’s convenience.Conjugate duality theory (also called convex duality), introduced byRockafellar [15], provides a method for solving very general optimiza-tion problems via dual problems. The following theory is, as is commonin optimization literature, formulated for minimization problems. How-ever, it can easily be translated to a maximization context by using that min f ( x ) = − max − f ( x ) .Let X be a linear space, and let f : X → R be a function. Theminimization problem min x ∈ X f ( x ) is called the primal problem , denoted ( P ) . In order to apply the conjugate duality method to the primal prob-lem, we consider an abstract optimization problem min x ∈ X F ( x, u ) where F : X × U → R is a function such that F ( x,
0) = f ( x ) , U is a linear spaceand u ∈ U is a parameter chosen depending on the particular problem athand. The function F is called the perturbation function . We would liketo choose ( F, U ) such that F is a closed, jointly convex function of x and u . Corresponding to this problem, one defines the optimal value function ϕ ( u ) := inf x ∈ X F ( x, u ) , u ∈ U. (14)Note that if the perturbation function F is jointly convex, then the optimalvalue function ϕ ( · ) is convex as well. EFERENCES
Convex duality and hydropower A pairing of two linear spaces X and V is a real-valued bilinear form h· , ·i on X × V . Assume there is a pairing between the spaces X and V . A topology on X is compatible with the pairing if it is a locallyconvex topology such that the linear function h· , v i is continuous, andany continuous linear function on X can be written in this form for some v ∈ V . A compatible topology on V is defined similarly. The spaces X and V are paired spaces if there is a pairing between X and V and the twospaces have compatible topologies with respect to the pairing. An exampleis the spaces X = L p (Ω , F, P ) and V = L q (Ω , F, P ) , where p + q = 1 .These spaces are paired via the bilinear form h x, v i = R Ω x ( s ) v ( s ) dP ( s ) .In the following, let X be paired with another linear space V , and U paired with the linear space Y . The choice of pairings may be importantin applications. Define the Lagrange function K : X × Y → ¯ R to be K ( x, y ) := inf { F ( x, u ) + h u, y i : u ∈ U } . The following Theorem A.1 isfrom Rockafellar [15] (see Theorem 6 in [15]). Theorem A.1
The Lagrange function K is closed, concave in y ∈ Y foreach x ∈ X , and if F ( x, u ) is closed and convex in uf ( x ) = sup y ∈ Y K ( x, y ) . (15)For the proof of this theorem, see Rockafellar [15]. Motivated by Theo-rem A.1, we define the dual problem of ( P ) , ( D ) max y ∈ Y g ( y ) where g ( y ) := inf x ∈ X K ( x, y ) .One reason why problem ( D ) is called the dual of the primal problem ( P ) is that, from equation (15), problem ( D ) gives a lower bound onproblem ( P ) . This is called weak duality . Sometimes, one can prove thatthe primal and dual problems have the same optimal value. If this is thecase, we say that there is no duality gap and that strong duality holds .The next theorem (see Theorem 7 in Rockafellar [15]) is important: Theorem A.2
The function g in ( D ) is closed and concave. Also sup y ∈ Y g ( y ) = cl ( co ( ϕ ))(0) and inf x ∈ X f ( x ) = ϕ (0) . (where cl and co denote respectively the closure and the convex hull of afunction, see Rockafellar [16]). For the proof, see Rockafellar [15]. The-orem A.2 implies that if the value function ϕ is convex, the lower semi-continuity of ϕ is a sufficient condition for the absence of a duality gap . References [1] Anderson, E. J. and Nash, P.: Linear Programming in Infinite Dimen-sional Spaces: Theory and Applications. Wiley-Interscience Series inDiscrete Mathematics and Optimization, (1987).[2] Alais, J.-C., Capentier, P. and De Lara, M.: Multi-usage hy-dropower single dam management: Chance-constrained optimizationand stochastic viability. Energy Systems. EFERENCES
Convex duality and hydropower [3] Chen, Z. and Forsyth, P. A.: Pricing hydroelectric power plantswith/without operational restrictions: a stochastic control approach.Nonlinear Models in Mathematical Finance. Nova Science Publishers,(2008).[4] Dahl, K. R.: A convex duality approach for pricing contingent claimsunder partial information and short selling constraints, to appear inStochastic Analysis and Applications, 2016.[5] Stochastic maximum principle with Lagrange multipliers and optimalconsumption with Lévy wage, Afrika Matematika, vol. 27, no. 3, pp.555-572, (2016).[6] Devolder, O., Glineur, F. and Nesterov, Y., Solving Infinite-dimensional Optimization Problems by Polynomial Approximation,Center for Research and Econometrics Discussion Paper, (2010).[7] Dohrman, C. R. and Robinett, R. D., Dynamic programming methodfor constrained discrete time optimal control, Journal of Optimiza-tion Theory and Applications, vol. 101, no. 2, pp. 259-283, (1999).[8] Huseby, A. B.: Optimizing energy production systems under uncer-tainty, Risk, Reliability and Safety: Innovating Theory and Practice:Proceedings of ESREL 2016,editors: Lesley Walls and Matthew Re-vie, (2016).[9] Ji, S. and Zhou, X. Y., A maximum principle for stochastic optimalcontrol with terminal state constraints and its applications. Com-munication in Information and Systems, vol. 6, no. 4, pp. 321-338,(2006).[10] King, A. J.: Duality and Martingales: A Stochastic ProgrammingPerspective on Contingent Claims. Mathematical Programming Ser.B. 91, 543-562, (2002).[11] King, A. J., Korf, L.: Martingale Pricing Measures in IncompleteMarkets via Stochastic Programming Duality in the Dual of L1.Preprint. University of Washington, (2001).[12] Pennanen, T.: Convex Duality in Stochastic Optimization and Math-ematical Finance. Mathematics of Operations Research. 36, 340-362,(2011)[13] Pennanen, T.: Introduction to Convex Optimization in FinancialMarkets. Mathematical Programming, 134, pp.157-186, (2012).[14] Pennanen, T., Perkkiö, A.P.: Stochastic programs without dualitygaps. Mathematical Programming. , 91–110, (2012).[15] Rockafellar, R. T.: Conjugate Duality and Optimization. Society forIndustrial and Applied Mathematics, Philadelphia, (1974).[16] Rockafellar, R. T.: Convex Analysis. Princeton University Press,Princeton, (1972).[17] Rockafellar, R. T., Wets, R.J.-B.: Variational Analysis. Springer,Berlin Heidelberg, (2004).[18] Vanderbei, R. J., Linear Programming: Foundations and Extensions.Kluwer Academic Publishers, Boston, (1996)., 91–110, (2012).[15] Rockafellar, R. T.: Conjugate Duality and Optimization. Society forIndustrial and Applied Mathematics, Philadelphia, (1974).[16] Rockafellar, R. T.: Convex Analysis. Princeton University Press,Princeton, (1972).[17] Rockafellar, R. T., Wets, R.J.-B.: Variational Analysis. Springer,Berlin Heidelberg, (2004).[18] Vanderbei, R. J., Linear Programming: Foundations and Extensions.Kluwer Academic Publishers, Boston, (1996).