1 Introduction

Many optimization problems in applications can be formulated using several objective functions, which are conflicting with each other. This leads to the notion of multiobjective or multicriterial optimization problems; cf. [4, 9, 12]. One prominent example is given by an energy efficient heating, ventilation and air-conditioning (HVAC) operation of a building with conflicting objectives such as minimal energy consumption and maximal comfort; cf. [6, 8].

In this paper we apply the reference point method [11] in order to transform a bicriterial optimal control problem into a sequence of scalar-valued optimal control problems and solve them using well-known optimal control techniques; see [13]. We build on and extend previous results obtained in [2], where a linear convection-diffusion equation was considered. In addition, we allow the convection term to be time-dependent here.

By using the a-posteriori error estimate [2, Theorem 9] we develop a new strategy for updating the POD basis while computing the Pareto front such that the error stays always below a certain predefined threshold. In our numerical examples we compare the strategy with the simple basis extension algorithm in [2, Algorithm 3]. Moreover, we propose a method to choose an efficient initial number of POD basis functions.

The paper is organized in the following manner: In Sect. 2 we present the state equation and the bicriterial optimal control problem. The reference point method and how to apply it to the problem at hand is explained in Sect. 3. Moreover, the POD method is briefly introduced to gain a speed-up in the solution process. Section 4 contains the numerical experiments and in Sect. 5 we draw a conclusion.

2 Problem Formulation

The State Equation

Let \(\varOmega \subset \mathbb {R}^d\) with d ∈{2, 3} be a bounded domain with Lipschitz-continuous boundary Γ. We choose m non-empty, pairwise disjoint subsets Ω 1, …, Ω m of the domain Ω. For a given end time T > 0, we set Q:= (0, T) × Ω and Σ:= (0, T) × Γ. The state equation is then given by the following diffusion-convection equation with homogeneous Neumann boundary conditions:

$$\displaystyle \begin{aligned} y_t(t,x)-\kappa \varDelta y(t,x)+\beta(t,x)\cdot\nabla y(t,x)&=\textstyle\sum_{i=1}^m u_i(t)\chi_i(x)&&\text{in } Q, \end{aligned} $$
(1a)
(1b)
$$\displaystyle \begin{aligned} y(0,x) &= y_0(x)&&\text{in } \varOmega. \end{aligned} $$
(1c)

In (1a) the constant κ > 0 is the diffusion coefficient and the time-dependent advection β is supposed to be in \(L^{\infty }(Q;\mathbb {R}^d)\). Furthermore, the function χ i is given by the characteristic function of the set Ω i for all i = 1, …, m. For the control variable u = (u 1, …, u m) we assume \(u \in U=L^2(0,T;\mathbb {R}^m)\). Finally in (1c), y 0 ∈ H = L 2(Ω) is a given initial temperature. To set the framework for the weak formulation of (1), we define the Hilbert space V = H 1(Ω) equipped with the standard inner product. The space

$$\displaystyle \begin{aligned} Y= W(0,T) = \big\{ \phi \in L^2(0,T;V) \mid \phi_t \in L^2(0,T;V^{\prime}) \big\} \end{aligned}$$

endowed with the canonical inner product is a Hilbert space; see, e.g. [3]. With similar arguments as in [1, Section 5.1] it is possible to show that for each tuple (u, y 0) ∈ U × H there is a unique weak solution y ∈ Y  of (1). Furthermore, the solution can be written as \(y = \hat y + \mathcal {S}u\), where \(\hat {y} \in Y\) is the weak solution of (1) for the pair (0, y 0) and the linear operator \(\mathcal S: U \to Y\) is given such that \(\mathcal Su\) is the weak solution of (1) to the pair (u, 0).

The Bicriterial Optimal Control Problem

For a given desired temperature y Q ∈ L 2(0, T;H) we introduce the cost functional

$$\displaystyle \begin{aligned} J:Y \times U \to \mathbb R^2, \quad J(y,u)= \Big( \begin{array}{c c} \frac{1}{2} \left\Vert y - y_Q \right\Vert_{L^2(0,T;H)}^2, & \frac{1}{2} \left\Vert u \right\Vert_{L^2(0,T;\mathbb{R}^m)}^2 \end{array} \Big)^\top. \end{aligned}$$

Defining the set U ad = {u ∈ Uu a ≤ u ≤ u b in [0, T]} for given u a, u b ∈ U with u a ≤ u b in [0, T], the bicriterial optimal control problem reads

$$\displaystyle \begin{aligned} \min J(y,u) \quad \text{s.t.} \quad (y,u) \in \big\{ (\tilde y,\tilde u) \in Y\times U_{\mathsf{ad}} \mid \tilde y=\hat y+\mathcal S\tilde u \big\}. {} \end{aligned} $$
(2)

Since \(\mathcal S\) is well-defined, we define the reduced cost function \(\hat J:U\to \mathbb R^2\), \(\hat J(u)=J(\hat y+\mathcal S u,u)\) and investigate the reduced formulation of (2) in this paper:

$$\displaystyle \begin{aligned} \min\hat J(u) \quad \text{s.t.} \quad u \in U_{\mathsf{ad}}. {}\end{aligned} $$
(3)

Problem (3) involves the minimization of a vector-valued function with two objectives. This is done by using the concept of Pareto optimality; cf. [4].

Definition 1

The point \(\bar u \in U_{\mathsf {ad}}\) is called Pareto optimal for (3) if there is no other control \(u \in U_{\mathsf {ad}} \setminus \{\bar u\}\) with \(\hat J_i(u) \leq \hat J_i(\bar u)\), i = 1, 2, and \(\hat J(u) \neq \hat J(\bar {u})\).

3 The Reference Point Method

The theoretical and numerical aim in solving a bicriterial optimization problem is to get an approximation of the Pareto set and the Pareto front, respectively, which are given by

$$\displaystyle \begin{aligned} P_s=\big\{ u \in U_{\mathsf{ad}} \mid u \text{ is Pareto optimal}\big\}\subset U\quad \text{ and }\quad P_f= \hat J(P_s) \subset \mathbb{R}^2.\end{aligned} $$

The scalarization method, in which the bicriterial function is transformed into a scalar function and then minimized using well-known techniques from scalar optimization, is one of the most popular approaches to tackle this problem, see e.g. [5, 9, 12]. The idea is that by choosing different scalarizations, both the Pareto set and the Pareto front can be approximated. One particular scalarization method is the (Euclidean) reference point method, which was previously used in [10, 11]. Given a reference point \(z \in P_f + \mathbb R_{\leq }^2= \{ z + x \mid z \in \mathcal {P}_f \text{ and } x \in \mathbb {R}_{\leq }^2 \} \) the distance function

measures the Euclidean distance between \(\hat J(u)\) and z for a given u ∈ U. The idea is that by solving the minimization problem

$$\displaystyle \begin{aligned} \min F_z(u)\quad \text{s.t.}\quad u\in U_{\mathsf{ad}},{} \end{aligned} $$
(4)

we get a Pareto optimal point for (3). The following theorem, which is taken from [1, Theorem 3.35], guarantees this property for the problem at hand.

Theorem 2

Let \(z \in P_f + \mathbb {R}_{\leq }^2\) be a reference point. Then (4) has a unique solution \(\bar {u} \in U_{\mathsf {ad}}\) , which is Pareto optimal for (3).

The algorithmic approach to approximate P f, which we consider in this paper, first computes the two boundary points of the Pareto front. These are given by the minimizers of \(\hat J_1\) and \(\hat J_2\), respectively. In our case we have to regularize the minimization of \(\hat J_1\) because \(\hat J_1\) is only strictly, but not strongly convex. Therefore, we minimize \(\hat J_1+\alpha \hat {J}_2\) with a small weight 0 < α ≪ 1. We always choose the minimizer of \(\hat J_1\) as a starting point. Given a Pareto optimal point the algorithm generates a new reference point following P f from top to bottom, and then solves the respective reference point problem. This procedure is repeated until the end of P f is reached. The exact scheme for computing the reference points along with a more detailed description of the algorithm can be found in [1, Section 3.4] and [2, Section 6].

When implementing this algorithm, (4) has to be solved repeatedly for different reference points \(z\in P_f+\mathbb R^2_{\leq }\). Each solve of (4) requires multiple solves of (1) and an adjoint equation (cf. [13, Section 3.6]) which is often computationally too costly when using a standard Finite Element (FE) method. Thus, it is reasonable to apply model-order reduction to reduce the computational effort. We use the well-known POD method; cf. [7]. In [1, 2] the procedure for our problem at hand is explained. Here, we just want to introduce some notations: Given a POD basis \(\{\psi _i\}_{i=1}^\ell \) of rank , we define the set V  = span {ψ 1, …, ψ } and the solution operator \(\mathcal S^\ell :U\to H^1(0,T;V^\ell ) \) of the POD solution of the u-dependent part of the state equation. The POD approximation of \(\hat {J}\) is defined as \(\hat J^\ell (u)= J(\hat y+\mathcal S^{\ell }u,u)\). Then, (4) is replaced by

(5)

with \(\hat J_2^\ell (u)=\hat J_2(u)\). For a given reference point \(z \in \mathcal {P}_f + \mathbb R_{\leq }^2\) we denote the optimal solutions to (4) and (5) by \(\bar {u}_z\) and \(\bar u_z^\ell \), respectively.

4 Numerical Results

In our numerical tests we consider the bicriterial optimal control problem presented in Sect. 2. We have \(\varOmega =(0,1)^2\subset \mathbb R^2\) and choose T = 1. The diffusion parameter is given by κ = 0.5 and for the convection term in (1a) we use \(\beta (t,x) = c_b \tilde {\beta } (t,x)\) for all (t, x) ∈ Q, where \(\tilde {\beta }\) is a non-stationary solution of a Navier-Stokes equation and c b ≥ 0 is a parameter to control the strength of the convection; cf. Fig. 1. We impose a floor heating of the whole room with m = 4 uniformly distributed heaters in the domains Ω 1 = (0, 0.5)2, Ω 2 = (0, 0.5) × (0.5, 1), Ω 3 = (0.5, 1) × (0, 0.5) and Ω 4 = (0.5, 1)2. The bilateral control constraints are u a = 0 and u b = 3. Finally, we choose y 0 = 16 and y Q(t, x) = 16 + 2t for all (t, x) ∈ Q. All computations were carried out on a MacBook Pro 13 (middle 2012) with 2.5 GHz Intel Core i5 and 4 GB RAM.

Fig. 1
figure 1

Time-dependent convection β(t, x) at two time instances. (a) t = 0.01. (b) t = 0.5

Test 1

We solve (3) for c b = 1. Then, P f is smoothly approximated by 52 Pareto optimal points; cf. Fig. 2. Hereby, P f ranges from P 1 = (0.0199, 4.1), which is computed with the weighted-sum method with weight α = 0.02, to P 52 = (0.6667, 0). Thus, the desired temperature can be achieved quite closely in the upper part of P f. The four optimal controls for P 1 can be seen in right plot of Fig. 2. As in the case of a time-independent convection term all four controls adapt to the air flow, which goes from the top left corner of the room to the right bottom corner by using different heating strategies. Furthermore, one can observe a slightly wavy behaviour of the optimal controls at the beginning. This is due to the temporal changes in the dynamics of the system caused by a vortex moving over time from the top left corner to the middle of the room. Another interesting aspect is that in the comparison to the time-independent case (by taking average over the time) the system with time-dependent convection only needs about 10% more computation time although the latter case adds dynamics to the optimal control problem, which are more difficult to handle numerically.

Fig. 2
figure 2

Test 1: Pareto front (left); optimal control \(\bar {u}^1\) corresponding to P 1 (right)

Test 2

Now we use an adaptive POD basis extension algorithm, which was introduced in [2, Algorithm 3], in order to investigate the influence of the time-dependent convection term on the number of needed POD basis functions. As a measure for the error between \(u_z^{\ell }\) and \(\bar {u}_z^{\ell }\) induced by the POD approximation we use the a-posteriori error estimate [2, Theorem 9] and set the upper bound of the acceptable error to μ = 4 ⋅ 10−4, as well as the initial number of POD basis functions to init = 5. Choosing the minimizer of \(\hat {J}_1\) as starting point we observe that 24 POD basis functions are needed to compute the whole Pareto front in the desired approximation quality. Thereby, all 19 basis extensions are conducted on P 2. For comparison, in [2] was shown that for a very similar problem with a time-independent convection term only 15 POD basis functions are sufficient to achieve the same quality. This is due to the fact that a time-dependency of a convection adds more complex dynamics to the system which are hard to capture by using only one fixed POD basis. To tackle this problem we propose a POD basis improving strategy. Algorithm 1 shows the routine for computing the n-th Pareto optimal point. In this paper we investigate two strategies for determining after each basis update.

Algorithm 1 POD basis update algorithm

  1. Require:

    threshold μ > 0, 0 <  min <  max;

  2. 1:

    Set check = 0;

  3. 2:

    while check = 0 do

  4. 3:

      Solve (5) with reference point z (n);

  5. 4:

      Compute the a-posteriori error estimate μ apost for the controls;

  6. 5:

      if μ apost < μ then

  7. 6:

         Set check = 1;

  8. 7:

      else

  9. 8:

         if  <  max − 1 then

  10. 9:

            Set  =  + 2;

  11. 10:

         else

  12. 11:

            Solve (4) for \(\bar {u}_{z}\) with reference point z (n) and starting point \(\bar {u}_{z}^\ell \) ;

  13. 12:

            Compute new POD basis by using \(\bar {u}_{z}\);

  14. 13:

            Choose  ∈ [ min, max] and set check = 1.

In the first case, we set  =  min. In the second case, we choose by observing the convergence rates in the control space; cf. [7, Theorem 1.49]. Namely, by choosing  ∈ [ min, max] such that

$$\displaystyle \begin{aligned} {\textstyle\sum_{i = \ell +1}^{\ell_{max}}} \lambda_i \Vert \psi_i - \mathcal P_H^{\ell} \psi_i \Vert_{H^1(\varOmega)}^2 < \varepsilon {} \end{aligned} $$
(6)

for an ε < μ holds, where \(\mathcal P_H^{\ell }\) denotes the H-orthogonal projection onto V , \(\{\psi _i \}_{i \in \mathbb {N}}\) is a POD basis and \(\{\lambda _i\}_{i \in \mathbb {N}}\) are the corresponding eigenvalues. The results for ε = 5 ⋅ 10−3 μ and max = 22 are presented in Fig. 3 and Table 1. The value of min is set to 10 and to 6 by the first and second strategy, respectively. Using the second strategy Algorithm 1 yields the best results with respect to the CPU time. Thus, (6) estimates quite well how many POD basis functions would have been necessary in order to compute the current Pareto point. As a result only 2 basis extensions on the points P 2 and P 3 are needed. Using the first strategy, 11 basis extensions are necessary as 10 POD basis function are not enough even after a basis update. Hence, a lot of avoidable basis extensions are done. In both cases one basis update is conducted. However, the performance of the Algorithm 1 depends strongly on the choice of max. Decreasing max to 20 increases the CPU time by 33% as 6 basis updates are needed in this case. Furthermore, ε has to be chosen appropriately to avoid unnecessary basis extensions in the second case.

Fig. 3
figure 3

Number of used POD basis functions in Algorithm 1 using ε = 0.5 ⋅ 10−2 μ. (a)  = 10 fixed. (b) 6 ≤  ≤ 22 adaptive

Table 1 Test 2: Results for ε = 0.5 ⋅ 10−2 μ

Test 3

Now we increase the strength of the convection term c b to 2 and run the basis extension algorithm with the same settings. Surprisingly, in the basis extension algorithm [2, Algorithm 3] only 25 POD basis functions are needed to compute the whole Pareto front, although there are significant changes in the behaviour of the controls. However, as expected, increasing the strength of the convection term increases heavily the number of basis updates in Algorithm 1 for the same values of max and thus the computation time.

5 Conclusion

In the present paper we show how including a time-dependent advection term into the state equation influences the results of the bicriterial optimal control problem (2). As expected the time-dependence adds dynamics to the system which cannot be captured that easily by a single POD basis. Therefore, by introducing a new POD update strategy we are able to save about 15% of the CPU time in comparison to the basis extension algorithm in [2, Algorithm 3].