1 Introduction

The design of fluid-saturated poroelastic media (FSPM) presents a gradually increasing topic of research interest due to its mathematical complexity and great application potential. Although the theory of FSPM has been developed in the context of geomechanics and civil engineering, these types of materials are now abundant in many engineering applications. A convenient design of microstructures can provide a metamaterial property related to controllable fluid transport or elasticity. In particular, soft robots can be designed as inflatable porous structures generating motion and force due to variable fluid content, e.g.  Andreasen and Sigmund (2013). In this context, the behaviour of the fluid-saturated porous materials is described by the Biot model (Biot and Willis 1957) in the small strain theory, which was postulated using a phenomenological approach. The homogenization method enabled the derivation of the quasi-static Biot’s equations (Burridge and Keller 1982). Since then, several works extended the results of the dynamic case, which is important for treating wave propagations, see, e.g. Rohan and Naili (2020). As an extension beyond the linear theory, a modified Biot model with strain-dependent poroelastic and permeability coefficients was proposed by Rohan and Lukeš (2015).

The topology optimization of microstructures constituting the FSPM was addressed by Andreasen and Sigmund (2012) and Andreasen and Sigmund (2013) who handled the fluid–structure interaction problem in the homogenization framework and proposed an approximation towards computational simplification.

In this paper, we aim to derive a two-scale approach which assumes a clear separation of the macro- and microscales, whereby one macroscopic cell represents a microstructured porous material rather than a single cell. In particular, we do not consider a de-homogenization with only a couple of unit cells per macro cell as, despite being an interesting aspect that should be addressed in future work, it exceeds the scope of this paper. Thus, we do not explicitly address the connectivity of the porous cells.

Two-scale optimization problems have already been extensively discussed in the literature. The concept originated with the seminal paper by Bendsøe and Kikuchi (1988) which proposed that, for a given parametrization of the unit cell, the homogenization procedure can be carried out on a fixed parameter grid in a preprocessing step. Subsequently, in every step of the optimization and for each design element, (approximate) effective material coefficients must first be retrieved by interpolation. In the next step, these coefficients are plugged into the state equation which is solved and from which the cost is evaluated. Conversely, sensitivities are computed using the chain rule, i.e. the quantity of interest with respect to the material coefficients is first differentiated and then the material coefficients are differentiated with respect to the design parametrization. This procedure opens the way for the application of any suitable gradient-based optimization solver, e.g.  Optimality Criteria Method (OCM) by Sigmund (2001), Method of Moving Asymptotes(MMA) by Svanberg (1987), or Sparse Nonlinear Optimizer (SnOpt) by Gill et al. (2002), to name only those examples that are most prominently used in structural topology and material optimization.

While the optimization concept initiated by Bendsøe and Kikuchi (1988) essentially carries over to other classes of problems, as it is done by Das and Sutradhar (2020), Zhou and Geng (2021), Chen et al. (2023) for thermomechanical settings, we opted to follow a slightly different avenue in this paper for several reasons. Firstly, by nature the concept largely depends on the chosen parametrization. If the parameters enter the homogenized properties in a substantially non-convex way (as is the case if, e.g.  rotations of the base cells are allowed), many local minima might be introduced and additional measures must be taken to avoid getting trapped in one of them. Secondly, it is not easy to extend the original concept with respect to the use of completely independent types of unit cells, regardless of whether they are characterized by different geometries or material configurations. In this case, specifying a smooth parametrization is non-trivial. The typical approach would be to first introduce an independent parametrization for either cell type (e.g.  using sizing variables) and then add a smooth interpolation scheme for the effective tensors on top as used, for instance, in multi-material optimization, see Hvejsel and Lund (2011). However, the problem with such an approach is that the second level of interpolation introduces material coefficients for which typically no interpretation exists in terms of a microstructure. Thus, an additional penalization strategy is required, which ensures that those unphysical choices do not remain in the optimal solution. Such an approach was successfully demonstrated in the recent work of Ypsilantis et al. (2022). In another recent article, Liu et al. (2023) chose two unit cell types, described via level-set functions, such that the mixture of their geometric parameters can be directly interpreted as a third unit cell type. Pizzolato et al. (2019) also opted for level-set functions to describe the geometry of the microstructures. However, with respect to the handling of multiple material classes, the authors defined floating patches where each patch is a subdomain of the design domain and only occupied by one microstructure type. Subsequently, the layout of these patches is optimized on the macroscopic level and their overlaps are combined via a differentiable maximum operator.

In our paper, we describe how these disadvantages can be circumvented using the SGP concept. The basic concept was introduced in Semmler et al. (2018) and is now generalized to a multiphysics, two-scale setting. This involves an extension of an MMA-type block-separable model function, see Stingl et al. (2009), to the poroelastic setting, a split of the computations into an offline and an online phase, which is particularly suited for homogenization-based problems, and a numerical solution scheme for the nearly global optimization of block-separable subproblems. In this context, it is important to note that the term block-separable implies that the minimization can be carried out separately for each design element, although a design element itself can be described by multiple design degrees of freedom. For a further motivation of the SGP method, we refer to the first paragraph in Sect. 3. In the overall optimization process, two different types of sensitivities are relevant. First, there are the sensitivities of constraint or cost functions with respect to the effective material coefficients. These constitute a substantial component of the block-separable model used at the core of the SGP method. Second, there are the sensitivities of the material coefficients with respect to the chosen parametrization. In the proposed two-scale SGP framework, the second type of sensitivities are not strictly required but can help to derive an improved interpolation model used in the offline phase. In the particular context of fluid-saturated porous media, the derivation of the sensitivities presented in this paper relies on derivations in Hübner et al. (2019), where the sensitivity of the homogenized coefficients were also reported, see also Rohan and Lukeš (2015).

Finally, we would like to comment on the generality of the presented approach with respect to multiphysics models and design parametrizations. Although the SGP concept outlined in our paper can be applied to a large range of multiphysics two-scale material optimization problems, the Biot model of fluid-saturated porous media provides an ideal test bed for the method for several reasons. Firstly, the physical coupling is non-trivial, while secondly, it is very natural to set up competing objective functions, such as the structural compliance on the one hand, and the enhanced fluid flow through an outflow boundary, on the other hand. Thirdly, configurable types of microstructures supporting either the first or the second goal can be deduced in a straightforward manner.

The SGP approach is applicable to combinations of different unit cell types with any low-dimensional parametrization per unit cell. The restriction to low dimensionality is the computational complexity of conventional interpolation schemes, such as the equidistant cubic interpolation used in this paper, for the entries of the effective material tensors which becomes infeasible for a number of parameters greater than four. For higher-dimensional parametrizations, roughly up to ten parameters, one may resort to interpolation approaches such as sparse grids, see Valentin et al. (2020). This aspect implies that our approach is not suitable for simultaneous material optimization on the macroscopic level and topology optimization on the unit cell level, as it is, for instance, approached by Rodrigues et al. (2002) and Coelho et al. (2008).

Fig. 1
figure 1

Flowchart of two-scale optimization with SGP

Fig. 1 illustrates the steps of the two-scale optimization process with SGP and reflects the structure of the remainder of this paper. All aspects of the two-scale problem are described in Sect. 2, which include a brief overview of the constitutive laws of the Biot model (Sect. 2.2 and Sect. 2.3), the poroelastic state problem in variational form (Sect. 2.4), a generic sketch of the two-scale problem constrained by the poroelasticity equations (Sect. 2.5), and an adjoint analysis providing sensitivities with respect to effective material coefficients as used later in the SGP method (Sect. 2.6). Finally, two types microstructures are proposed in the form of configurable unit cells (Sect. 2.7). In Sect. 3, the SGP concept for the solution of two-scale optimization problems is introduced in greater detail. For this, the two-scale problem is discretized and extended for the use of multiple types of unit cells (Sect. 3.1). Subsequently, a separable sequential approximation concept is proposed (Sect. 3.2), and finally, the SGP method is presented in an algorithmic form (Sect. 3.3). In Sect. 4, the advantages of the SGP algorithm are discussed using various types of two-scale problems.

The highlights of our paper include:

  • The simultaneous treatment of differently parametrized unit cell types in a two-scale optimization workflow.

  • Non-convex models, formulated in effective material properties, are globally optimized.

  • The SGP framework is - for the first time - combined with a multiphysics, here poroelastic, model.

  • Our algorithm displays only slight dependence on the initial designs and thus only requires a few iterations to obtain decent optimized designs.

2 Formulation of the two-scale optimization problem

Our optimization strategy is outlined and explained in this section. Although it can be applied to similar problems involving several physical fields or multiphysics problems, in this paper we consider the fluid-saturated porous media represented by the Biot model which can be derived using the homogenization of the fluid–structure interaction problem restricted to small deformation kinematics, (see, e.g. Burridge and Keller 1982; Brown et al. 2011; Rohan et al. 2016).

2.1 Notation

The notation that we employ is outlined below. Since we deal with a two-scale problem, we distinguish between the “macroscopic” and “microscopic” coordinates, x and y, respectively. We use \({\nabla _x = (\partial _i^x)}\) and \({\nabla _y = (\partial _i^y)}\) when differentiating with respect to coordinates x and y, whereby \(\nabla \equiv \nabla _x\). Using \({{\varvec{e}}}({{{\varvec{u}}}}) = 1/2[(\nabla {{\varvec{u}}})^T + \nabla {{\varvec{u}}}]\), we denote the strain of a vectorial function \({{\varvec{u}}}\) where the transpose operator is indicated by the superscript \({}^T\). The Lebesgue spaces of 2nd-power integrable functions on an open bounded domain \(D\subset \mathbb {R}^3\) are denoted by \(L^2(D)\) while the Sobolev space \({{\varvec{W}}}^{1,2}(D)\) of the square integrable vector-valued functions on D, including the first-order generalized derivative, is abbreviated as \(\mathbf{{H}}^1(D)\). Further, \(\mathbf{{H}}_\#^1(Y_m)\) is the Sobolev space of vector-valued Y-periodic functions (the subscript \(\#\)).

2.2 Coupled flow deformation problem

The Biot–Darcy model of poroelastic media for quasi-static, evolutionary problems imposed in \(\Omega\) is constituted by the following equations involving stress \({{\varvec{\sigma }}}\), displacement \({{\varvec{u}}}\), strain \({{\varvec{e}}}({{\varvec{u}}})\), fluid pressure p, and the seepage velocity \({{\varvec{w}}}\):

$$\begin{aligned} \begin{aligned} -\nabla \cdot {{\varvec{\sigma }}}&= {{\varvec{f}}}^s,\; \quad {{\varvec{\sigma }}}= {\textrm{A} \hspace{-6.00006pt}\textrm{A}}{{\varvec{e}}}({{{\varvec{u}}}}) - {{\varvec{B}}}p,\\ -\nabla \cdot {{\varvec{w}}}&= {{\varvec{B}}}:{{\varvec{e}}}({{\dot{{{\varvec{u}}}}}}) + M \dot{p}, \\ {{\varvec{w}}}&= -\frac{{{\varvec{K}}}}{{{\bar{\eta }}}} \left( \nabla p - {{\varvec{f}}}^f \right) , \end{aligned} \end{aligned}$$
(1)

whereby \({{\varvec{f}}}^s\) and \({{\varvec{f}}}^f\), the effective volume forces in Eq. 1 acting in the solid and fluid phases, are denoted, respectively, and \({{\bar{\eta }}}= \eta ^{\text {phys}}/\varepsilon _0^2\) is the relative fluid viscosity given for the specific fluid viscosity \(\eta ^{\text {phys}}\) and microstructure scale \(\varepsilon _0\), see Remark 1. The poroelastic coefficients \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}, {{\varvec{B}}}, M\), and the hydraulic permeability \({{\varvec{K}}}\) are obtained using the homogenization of the fluid–structure interaction problem considered in a locally periodic microstructure. Such a structure is generated as a periodic lattice by the microscopic representative unit cell \({Y = \Pi _{i=1}^3]0,\ell _i[ \subset \mathbb {R}^3}\) which splits into the solid part occupying domain \(Y_m\) and the complementary channel part \(Y_c\), see Fig. 2,

$$\begin{aligned} Y&= Y_m \cup Y_c \cup \Gamma _Y ,\quad \nonumber \\ Y_c&= Y \setminus Y_m ,\quad \nonumber \\ \Gamma _Y&= \overline{Y_m } \cap \overline{Y_c }, \end{aligned}$$
(2)

whereby we use \(\overline{Y_d }\) for \(d=m,c\) to denote the closure of the open bounded domain \(Y_d\). Using \(\scriptstyle{ \sim \hspace{-11.99997pt}}\int_{Y_d} = \vert Y \vert ^{-1}\int_{Y_d}\) with \(Y_d\subset \overline{Y}\) for \(d=m,c\), we denote the local average (\(\vert Y\vert\) is the volume of domain Y). Naturally, the unit volume \(\vert Y\vert =1\) can always be chosen. The homogenized coefficients are computed using the integral expression presented in Eq. 7 which involves the characteristic responses of the microstructure and the solutions to the local problems Eqs. 46 presented in the next section.

Fig. 2
figure 2

Microstructure decomposition. The zoomed reference periodic cells Y are associated with locally periodic porous medium filling the macroscopic domains \(\Omega _+\) and \(\Omega _0\)

2.3 The homogenized Biot–Darcy model

We report the homogenization result presented, e.g.  in Rohan and Lukeš (2015), cf. Hübner et al. (2019), where the problem of locally optimized microstructures was described. The homogenized model of the porous elastic medium incorporates local problems for characteristic responses that are employed to compute the effective material coefficients of the Biot model.

We employ the usual elasticity bilinear form involving two vector fields \({{\varvec{w}}}\) and \({{\varvec{v}}}\) that reads

$$\begin{aligned} a_{Y}^m \left( {{{\varvec{w}}}},\,{{{\varvec{v}}}}\right) = \sim \hspace{-11.99997pt}\int _{Y_m} ({\textrm{I} \hspace{-1.99997pt}\textrm{D}}{{\varvec{e}}}_y({{{\varvec{w}}}})) : {{\varvec{e}}}_y({{{\varvec{v}}}}), \end{aligned}$$
(3)

where \({\textrm{I} \hspace{-1.99997pt}\textrm{D}}= (D_{ijkl})\) is the elasticity tensor satisfying the usual symmetries, \(D_{ijkl} = D_{klij} = D_{jikl}\), and \({{\varvec{e}}}_y({{{\varvec{v}}}}) = \frac{1}{2}(\nabla _y {{\varvec{v}}}+ (\nabla _y {{\varvec{v}}})^T)\) is the linear strain tensor associated with the displacement field \({{\varvec{v}}}\).

In what follows, the microstructure \(\mathcal {Y}(x)\) refers to the decomposition Eq. 2 of the representative cell Y and the material properties, as represented by the elasticity \({\textrm{I} \hspace{-1.99997pt}\textrm{D}}\) in our case only. If the structure is perfectly periodic, the microstructures \(\mathcal {Y}\equiv \mathcal {Y}(x)\) are independent of the macroscopic position \(x \in \Omega\). Otherwise, the local problems must be considered at any macroscopic position, i.e. for almost any \(x \in \Omega\), see, e.g. Brown et al. (2011) in the context of slowly varying “quasi-periodic” microstructures. This issue is of great significance when dealing with homogenization-based material design optimization and, as explained below, a regularization is required to control the design variation within \(\Omega\).

The local microstructural response is obtained by solving the following decoupled problems:

  • Find \({{\varvec{\omega }}}^{ij}\in \mathbf{{H}}_\#^1(Y_m)\) for any \(i,j = 1,2,3\) satisfying

    $$\begin{aligned} \begin{aligned} a_{Y}^m \left( {{{\varvec{\omega }}}^{ij} + {\varvec{\Pi }}^{ij}},\,{{{\varvec{v}}}}\right)&= 0,\; \forall {{\varvec{v}}}\in \mathbf{{H}}_\#^1(Y_m), \end{aligned} \end{aligned}$$
    (4)

    where \({\varvec{\Pi }}^{ij} = (\Pi _k^{ij})\), \(i,j,k = 1,2,3\) with components \(\Pi _k^{ij} = y_j\delta _{ik}\), represents the displacement generated by the macroscopic strain component \(e_{ij}^x\) (note that \(e_{kl}^y({\varvec{\Pi }}^{ij}) = 1/2(\delta _{ik}\delta _{jl} + \delta _{il}\delta _{jk})\)).

  • Find \({{\varvec{\omega }}}^P \in \mathbf{{H}}_\#^1(Y_m)\) satisfying

    $$\begin{aligned} \begin{aligned} a_{Y}^m \left( {{{\varvec{\omega }}}^P},\,{{{\varvec{v}}}}\right)&= \sim \hspace{-11.99997pt}\int _{\Gamma _Y} {{\varvec{v}}}\cdot {{\varvec{n}}}^{[m]}\,\text {dS}_{y}, \; \forall {{\varvec{v}}}\in \mathbf{{H}}_\#^1(Y_m). \end{aligned} \end{aligned}$$
    (5)
  • Find \(({\varvec{\psi }}^i,\pi ^i) \in \mathbf{{H}}_\#^1(Y_c) \times L^2(Y_c)\) for \(i = 1,2,3\) such that

    $$\begin{aligned} \begin{aligned} \int _{Y_c} \nabla _y {\varvec{\psi }}^k: \nabla _y {{\varvec{v}}}- \int _{Y_c} \pi ^k \nabla \cdot {{\varvec{v}}}&= \int _{Y_c} v_k,\\ \int _{Y_c} q \nabla _y \cdot {\varvec{\psi }}^k&= 0, \\ \end{aligned} \end{aligned}$$
    (6)

    \(\forall {{\varvec{v}}}\in \mathbf{{H}}_\#^1(Y_c)\) and \(\forall q \in L^2(Y_c)\).

The effective material properties of the homogenized deformable fluid-saturated porous medium are described in terms of homogenized poroelastic coefficients: the drained elasticity \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\), the stress coupling \({{\varvec{C}}}\), and the compressibility \({N}\), which are all related to the solid skeleton. All these coefficients, including the intrinsic hydraulic permeability \({{\varvec{K}}}\), are computed using the characteristic microscopic responses Eqs. 4 ,5, 6 substituted into the following expressions:

$$\begin{aligned} \begin{aligned} A_{ijkl} = a_{Y}^m \left( {{{\varvec{\omega }}}^{ij} + {\varvec{\Pi }}^{ij}},\,{{{\varvec{\omega }}}^{kl} + {\varvec{\Pi }}^{kl}}\right) ,\\ C_{ij} = -\sim \hspace{-11.99997pt}\int _{Y_m}\text{ div}_y {{\varvec{\omega }}}^{ij} = a_{Y}^m \left( {{{\varvec{\omega }}}^P},\,{{\varvec{\Pi }}^{ij}}\right) ,\\ N = a_{Y}^m \left( {{{\varvec{\omega }}}^P},\,{{{\varvec{\omega }}}^P}\right) = \sim \hspace{-11.99997pt}\int _{\Gamma _Y} {{\varvec{\omega }}}^P\cdot {{\varvec{n}}}\,\text {dS}_{y},\\ K_{ij} = \sim \hspace{-11.99997pt}\int _{Y_c} \psi _i^j = \sim \hspace{-11.99997pt}\int _{Y_c} \nabla _y {\varvec{\psi }}^i : \nabla _y {\varvec{\psi }}^i. \end{aligned} \end{aligned}$$
(7)

Subsequently, the Biot stress coupling \({{\varvec{B}}}\) and the Biot compressibility \({M}\) are given by

$$\begin{aligned} \begin{aligned} {{\varvec{B}}}&:= {{\varvec{C}}}+ \phi {{\varvec{I}}},\\ M&:= N + \phi \gamma , \end{aligned} \end{aligned}$$
(8)

where \(\gamma\) is the fluid compressibility and \(\phi = \vert Y_c\vert / \vert Y \vert\) is the porosity (volume fraction of the fluid-filled channels).

Naturally, the tensors \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}= (A_{ijkl} )\), \({{\varvec{B}}}= (B_{ij} )\) , and \({{\varvec{K}}}= (K_{ij} )\) are symmetric, \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\) adheres to all the symmetries of \({\textrm{I} \hspace{-1.99997pt}\textrm{D}}\), \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\) is positive definite, and \(N > 0\). Furthermore, while the hydraulic permeability \({{\varvec{K}}}\) is generally positive semi-definite, it is positive definite whenever the channels constitute a simply connected domain generated as the periodic lattice by \(Y_c\); for this, denoting the faces of Y by \(\Gamma _Y^k\subset \partial Y\), \(k=1,\dots ,6\), it must hold that \(\Gamma _Y^k\cap \partial Y_c \not = \emptyset\) for all \(k=1,\dots ,6\).

Remark 1

It is important to note that \({{\bar{\eta }}} = \eta ^{\text {phys}}/\varepsilon _0^2\) involved in the Darcy law Eq. 1\(_3\) is defined for a given fluid (\(\eta ^{\text {phys}}\)) and microstructures scale: \(\varepsilon _0 = \ell _0/L\) where L is a characteristic macroscopic length, and \(\ell _0\) is the characteristic microstructure size, which is typically given by the “pore diameter”. Thus, for a given fluid, the effective permeability \({{\varvec{K}}}/{{\bar{\eta }}}\) is proportional to \(\varepsilon _0^2\), i.e. it reflects the microstructure size. In contrast, all other coefficients are scale-independent (when the scale separation holds, i.e. \(\varepsilon _0\) being small enough).

Remark 2

In this paper, we only consider steady-state problems for the Biot medium, such that all time derivatives in Eq. 1 vanish. Consequently, the Biot compressibility \({M}\) is not involved as far as the porous phase, which is generated as a periodic lattice by channels \(Y_c\), is connected. Consequently, problem Eq. 5 may be skipped. However, for any microstructure with disconnected pores, such that \(\overline{Y_c} \subset Y\), thus \(Y_c\), constitutes one or more inclusions with one cell \(Y\), see (Rohan et al. 2016), the permeability vanishes. In such instances, the time integration in Eq. 1 leads to the mass conservation equation in the form \({{\varvec{B}}}:{{\varvec{e}}}({{{\varvec{u}}}}) + M p = 0\), assuming an undeformed initial configuration with the zero pressure in the inclusions. In the optimization problem, apart from microstructures with nondegenerate permeabilities, we also consider microstructures with spherical and thus disconnected pores, constituting impermeable material. In this case, one can choose either fluid-filled pores or empty pores as the only difference lies in the use of the so-called undrained material elasticity, \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_U = {\textrm{A} \hspace{-6.00006pt}\textrm{A}}+ M^{-1}{{\varvec{B}}}\otimes {{\varvec{B}}}\) or the elasticity \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\) describing the effective elasticity of the “drained” skeleton with empty pores.

Fig. 3
figure 3

The domain and boundary decomposition considered in the state problem Eq. 9 (left) and Eq. 10 (right)

2.4 State problem formulation

Let \(\Omega \subset \mathbb {R}^3\) be an open bounded domain. Its boundary \(\partial \Omega\) splits as follows: \(\partial \Omega = \Gamma _D \cup \Gamma _N\) and also \(\partial \Omega = \Gamma _p \cup \Gamma _w\), where \(\Gamma _D \cap \Gamma _N = \emptyset\) and \(\Gamma _p \cap \Gamma _w = \emptyset\). Assume \(\Gamma _p\) consists of two disconnected, non-overlapping parts \(\Gamma _p^k\), \(k = 1,2\), \(\Gamma _p = \Gamma _p^1\cup \Gamma _p^2\), and \(\Gamma _p^1\cap \Gamma _p^2 = \emptyset\).

We consider the steady-state problems for the linear Biot continuum occupying domain \(\Omega\). The poroelastic material parameters and the hydraulic permeability referred to as the homogenized coefficients are generally given by the locally defined microstructures \(\mathcal {Y}(x)\) which can vary with \(x \in \Omega\).

The two-scale optimization approach proposed in this paper facilitates the combination of microstructures characterized by connected and disconnected pores, with the latter characterized by a vanishing permeability. To achieve this aim, the domain \(\Omega = \Omega _0 \cup \Omega _+\) is decomposed into two parts: the permeable \(\Omega _+\) and the impermeable \(\Omega _0\), which may not constitute connected domains, being split into more disconnected subparts, see Fig. 3. Consequently, the interface \(\Gamma _+ = \partial \Omega _+ \cap \partial \Omega _0\) is impermeable. Regarding the boundary decomposition, we assume that \(\Gamma _{p+}^k := \Gamma _p^k\cap \partial \Omega _+ \not = \emptyset\), for \(k=1,2\), so that the porous structure permits the fluid transport through domain \(\Omega _+\) if it connects \(\Gamma _{p+}^1\) and \(\Gamma _{p+}^2\).

We consider the following macroscopic problem: Given the traction surface forces \({{\varvec{g}}}\) and pressures \({{\bar{p}}}^k\) on boundaries \(\Gamma _p^k\), find displacements \({{\varvec{u}}}\) and the hydraulic pressure \(P\) which satisfy

$$\begin{aligned} \begin{aligned} -\nabla \cdot \left( {\textrm{A} \hspace{-6.00006pt}\textrm{A}}{{\varvec{e}}}({{{\varvec{u}}}}) - P {{\varvec{B}}}\right)&= 0\quad \text{ in } \Omega ,\\ {{\varvec{u}}}&= 0 \quad \text{ in } \Gamma _D,\\ \left( {\textrm{A} \hspace{-6.00006pt}\textrm{A}}{{\varvec{e}}}({{{\varvec{u}}}}) - P {{\varvec{B}}}\right) \cdot {{\varvec{n}}}&= {{\varvec{g}}}\quad \text{ in } \Gamma _N, \end{aligned} \end{aligned}$$
(9)

where \(P = 0\) in \(\Omega _0\), whereas in \(\Omega _+\), P satisfies

$$\begin{aligned} \begin{aligned} -\nabla \cdot {{\varvec{K}}}\nabla P&= 0\quad \text{ in } \Omega _+,\\ P&= {{\bar{p}}}^k \quad \text{ on } \Gamma _{p+}^k,\quad k = 1,2,\\ {{\varvec{n}}}\cdot {{\varvec{K}}}\nabla P&= 0 \quad \text{ on } \Gamma _w \cup \Gamma _+. \end{aligned} \end{aligned}$$
(10)

For the steady-state problem, the set of equations Eq. 1 yields the two problems Eqs. 9 and 10 as a decoupled system: first, Eq. 10 can be solved for \(P\), after which Eq. 9 is solved for \({{\varvec{u}}}\). Moreover, for the considered type of boundary conditions, and since volume forces are not involved, the solutions are independent of the viscosity \({{\bar{\eta }}}\), see Eq. 1.

Further, we consider an extension of \({{\bar{p}}}^k\) from boundary \(\Gamma _p^k\) to the whole domain \(\Omega\), such that \({{\bar{p}}}^k = 0\) on \(\Gamma _p^l\) (in the sense of traces) for \(l\not = k\). Then, \(P = p + \sum _k{{\bar{p}}}^k\) in \(\Omega _+\), such that \(p = 0\) on \(\Gamma _{p+}\) and \(p\) can be simply extended by 0 in \(\Omega _0\). For the sake of notational simplicity, we introduce \({{\bar{p}}}=\sum _k{{\bar{p}}}^k\). Furthermore, by virtue of the Dirichlet boundary conditions for \({{\varvec{u}}}\) and \(p\), we introduce the following spaces:

$$\begin{aligned} \begin{aligned} V_0&= \{{{\varvec{v}}}\in \mathbf{{H}}^1(\Omega )\, \vert \; {{\varvec{v}}}= 0 \text{ on } \Gamma _D\},\\ Q_0&= \{q \in L^2(\Omega )\cap H^1(\Omega _+)\, \vert \; q = 0 \text{ on } \Gamma _{p+}\}. \end{aligned} \end{aligned}$$
(11)

We employ the bilinear forms and the linear functional g,

$$\begin{aligned} \begin{aligned} a_{\Omega } \left( {{{\varvec{u}}}},\,{{{\varvec{v}}}}\right)&= \int _\Omega ({\textrm{A} \hspace{-6.00006pt}\textrm{A}}{{\varvec{e}}}({{{\varvec{u}}}})):{{\varvec{e}}}({{{\varvec{v}}}}),\\ b_{\Omega _+} \left( {p},\,{{{\varvec{v}}}}\right)&= \int _{\Omega _+} p {{\varvec{B}}}:{{\varvec{e}}}({{{\varvec{v}}}}),\\ c_{\Omega _+} \left( {p},\,{q}\right)&= \int _{\Omega _+} \nabla q\cdot {{\varvec{K}}}\nabla p,\\ g({{\varvec{v}}})&= \int _{\Gamma _N} {{\varvec{g}}}\cdot {{\varvec{v}}}. \end{aligned} \end{aligned}$$
(12)

To define the state problem in the context of two-scale optimization, we employ the weak formulation which reads as follows: Find \({{\varvec{u}}}\in V_0\) and \(p \in Q_0\), such that, for all \({{\varvec{v}}}\in V_0\) and \(q \in Q_0\),

$$\begin{aligned} \begin{aligned} a_{\Omega } \left( {{{\varvec{u}}}},\,{{{\varvec{v}}}}\right) - b_{\Omega _+} \left( {p},\,{{{\varvec{v}}}}\right)&= g({{\varvec{v}}}) + b_{\Omega _+} \left( {{{\bar{p}}}},\,{{{\varvec{v}}}}\right) , \\ c_{\Omega _+} \left( {p},\,{q}\right)&= -c_{\Omega _+} \left( {{{\bar{p}}}},\,{q}\right) . \end{aligned} \end{aligned}$$
(13)

To uniquely define \(p\) in \(\Omega\), \(p\equiv 0\) in \(\Omega _0 = \Omega \setminus \Omega _+\). Since the two fields are decoupled, \(p\) is first solved from Eq. 13\(_2\), after which \({{\varvec{u}}}\) is solved from Eq. 13\(_1\), where \(p\) is already known.

Remark 3

In the context of the undrained porosity defined by fluid-filled closed pores \(Y_c \subset Y\), see Remark 2, whereby formulation Eq. 13 is also consistent with this microstructure class type \(\mathcal {Y}_0^\square\) with \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_U\) replacing \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\) in the elasticity bilinear form Eq. 12\(_1\). Pressure is then defined pointwise in \(\Omega _0\) by \(P:= - {{\varvec{B}}}:{{\varvec{e}}}({{{\varvec{u}}}})/M\).

We use \(\alpha\) to denote an abstract function which determines the particular layout of the microstructure in each \(x\in \Omega\). In the examples below, each \(\alpha (x)\) stores several geometrical parameters characterizing microstructures \(\mathcal {Y}(x)\) of a given type. In the following, we call \(\alpha\) a design.

Although we disregard some particular details related to the treatment of multiple types of \(\mathcal {Y}\) in this section, we consider the existence of two microstructure classes, \(\mathcal {Y}_+^\square\) and \(\mathcal {Y}_0^\square\), associated with the pore connectivity type as discussed above. The “permeable” domain \(\Omega _+\) is occupied by the material given pointwise by \(\mathcal {Y}(x) \in \mathcal {Y}_+^\square\) for all \(x\in \Omega _+\). Hence, both the subdomains of \(\Omega\) are defined implicitly by the microstructure type: \(\Omega _i\) is the set of \(x\in \Omega\), such that \(\mathcal {Y}(x) \in \mathcal {Y}_i^\square\), where \(i = +,0\).

We thus consider a two-scale optimization problem that is characterized by the following features:

  • Geometrical restrictions are stated in respective definitions of the admissibility design sets for a chosen type of microstructure. For instance, let

    $$\begin{aligned} A = [{\underline{{{\varvec{a}}}}},{\overline{{{\varvec{a}}}}}] \subset \mathbb {R}^n \end{aligned}$$

    be the set of admissible designs. Then, \({\underline{{{\varvec{a}}}}},{\overline{{{\varvec{a}}}}} \in \mathbb {R}^n\) are lower and upper bounds on the design parametrization and we regard \(\alpha : \Omega \rightarrow A\).

  • We consider multiple optimization criteria that perform as the objective functions or equality constraints. Without the loss of generality, we confine ourselves to the two criteria \(\Phi _\alpha ({{\varvec{u}}})\) and \(\Psi _\alpha (p)\) that are defined as follows:

    $$\begin{aligned} \begin{aligned} \Phi _\alpha ({{\varvec{u}}})&= g({{\varvec{u}}}),\\ \Psi _\alpha (p)&= - \int _{\Gamma _p^2}{{\varvec{K}}}\nabla (p+ {{\bar{p}}}) \cdot {{\varvec{n}}}. \end{aligned} \end{aligned}$$
    (14)

    While \(\Phi _\alpha ({{\varvec{u}}})\) expresses the structural compliance, criterion function \(\Psi _\alpha (p)\) expresses the amount of the fluid flow through surface \(\Gamma _p^2\) due to the pressure difference \({{\bar{p}}}^1 - {{\bar{p}}}^2\), as shown in the boundary condition in Eq. 10\(_2\). These two criteria are antagonists as the pore volume reduction naturally leads to a stiffening of the structure but reduces the permeability. Hence, for the objective function \(\Phi _\alpha\), function \(\Psi _\alpha\) serves as a constraint and vice versa.

2.5 Two-scale optimization problem

To facilitate the ease of notation we restrict our approach to one microstructure type only, namely \(\mathcal {Y}(x) \in \mathcal {Y}_+^\square\), so that we may consider \(\Omega \equiv \Omega _+\). Hence, all the bilinear forms in Eq. 12 are defined by integration in \(\Omega\).

We first define the direct optimization problem to find design \(\alpha\) that minimizes a cost functional based on the criteria defined in Eq. 14. Further, we introduce the set \(\mathcal {T}= \mathbb {S}^6 \times \mathbb {S}^3 \times \mathbb {S}^3 \times \mathbb {R}\times \mathbb {R}\) and denote by

$$\begin{aligned} {\textrm{I} \hspace{-1.99997pt}\textrm{H}}: x \mapsto ({\textrm{A} \hspace{-6.00006pt}\textrm{A}}(x),{{\varvec{B}}}(x),{{\varvec{K}}}(x),\rho _\text {m}(x),R(x)) \in \mathcal {T}\end{aligned}$$

the function that assigns each \(x\in \Omega\) material parameters involving the effective (homogenized) material coefficients, the solid part volume \({\rho _\text {m} = 1-\phi = \vert Y_m \vert / \vert Y\vert }\), and a regularization parameter \(R\), which typically only depends on the design.

For a given admissible design \(\alpha\), the state \({{\varvec{z}}}= ({{\varvec{u}}},p)\) is the solution of Eq. 13 where for every \(x\in \Omega\) the homogenized coefficients \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}(x)\) are given in Eq. 7 using the characteristic responses \({{\varvec{W}}}(x):=({{\varvec{\omega }}}^{ij},{{\varvec{\omega }}}^P,{\varvec{\psi }}^k,\pi ^k)\). For every \(x\in \Omega\), \({{\varvec{W}}}(x)\) stores the solutions to Eq. 4,5,6, which depend on \(\alpha (x)\) in terms of the microconfigurations \(\mathcal {Y}(x)\). In this way, mapping \(\mathcal {S}:\alpha \mapsto {{\varvec{z}}}\) introduces the admissible state and can be defined by a composition map, \(\mathcal {S}= \mathcal {Z}\circ \mathcal {E}\circ \mathcal {W}\), where \(\mathcal {W}\) represents the resolvents of the characteristic problems imposed on the local microconfigurations, \(\mathcal {E}\) provides the homogenized material, and \(\mathcal {Z}\) is the resolvent

$$\begin{aligned} \begin{aligned} \mathcal {W}:\alpha&\mapsto {{\varvec{W}}}\\ \mathcal {E}:(\alpha , {{\varvec{W}}})&\mapsto {\textrm{I} \hspace{-1.99997pt}\textrm{H}}\\ \mathcal {Z}:{\textrm{I} \hspace{-1.99997pt}\textrm{H}}&\mapsto {{\varvec{z}}}. \end{aligned} \end{aligned}$$
(15)

Further, we employ the mapping

$$\begin{aligned} \mathcal {H}:\alpha \mapsto {\textrm{I} \hspace{-1.99997pt}\textrm{H}}, \end{aligned}$$

such that \(\mathcal {H}= \mathcal {E}\circ \mathcal {W}\) is the composition map defined for any admissible design. We would like to mention that the map \(\mathcal {H}\) (as also \(\mathcal {E}\) and \(\mathcal {W}\)) are understood pointwise, i.e.

$$\begin{aligned} \mathcal {H}(\alpha ): x \mapsto \mathcal {H}(\alpha (x)) \ \forall x \in \Omega . \end{aligned}$$

The macroscopic state problem introduced in Eq. 13 is the implicit form \(\varphi _{{\textrm{I} \hspace{-1.99997pt}\textrm{H}}} = 0\) of the mapping \(\mathcal {Z}: {\textrm{I} \hspace{-1.99997pt}\textrm{H}}\mapsto {{\varvec{z}}}\), such that \({{{\varvec{z}}}\in S_0 = V_0\times Q_0}\) satisfies

$$\begin{aligned} \begin{aligned} \varphi _{{\textrm{I} \hspace{-1.99997pt}\textrm{H}}}({{\varvec{z}}},{{\varvec{v}}})&= 0\quad \forall {{\varvec{v}}}\in S_0,\\ \text{ with } \varphi _{{\textrm{I} \hspace{-1.99997pt}\textrm{H}}}({{\varvec{z}}},{{\varvec{v}}})&:= a_{\Omega } \left( {{{\varvec{u}}}},\,{{{\varvec{v}}}}\right) - b_{\Omega _+} \left( {p},\,{{{\varvec{v}}}}\right) \\&\quad - g({{\varvec{v}}}) -b_{\Omega _+} \left( {{{\bar{p}}}},\,{{{\varvec{v}}}}\right) \\&\quad +c_{\Omega _+} \left( {p},\,{q}\right) +c_{\Omega _+} \left( {{{\bar{p}}}},\,{q}\right) , \end{aligned} \end{aligned}$$
(16)

where \(S_0\) is the space of admissible state problem solutions. For the Biot medium problem, Eq. 16 is identified with Eq. 13.

2.5.1 Direct two-scale optimization problem

For the two given functions of interest, \(\Phi\) and \(\Psi\), both depending on the material distribution \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\) and the state \({{\varvec{z}}}\), the two-scale abstract optimization problem reads:

$$\begin{aligned} \begin{aligned} \min _{\alpha :\Omega \rightarrow A}\ {}&\Phi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}) + \Lambda _\Xi \Xi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}}) \\ \text{ s.t. }&\Psi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}) = \Psi _0,\\&{{\varvec{z}}}= \mathcal {S}(\alpha ),\\&{\textrm{I} \hspace{-1.99997pt}\textrm{H}}= \mathcal {H}(\alpha ),\\&\int _\Omega \rho _\text {m} \le {{\bar{\rho }}}_\text {m} \vert \Omega \vert , \end{aligned} \end{aligned}$$
(17)

where the term \(\Xi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}})\) in the objective is related to the design regularization, namely to parameter \(R\), and \(\Lambda _\Xi \in \mathbb {R}^+\) is a penalty parameter. If we recall the chain mapping \({\mathcal {H}:\alpha \mapsto {\textrm{I} \hspace{-1.99997pt}\textrm{H}}}\), then \({{\varvec{z}}}= \mathcal {Z}(\mathcal {H}(\alpha ))\). Below, we abbreviate \({\Phi _\alpha ({{\varvec{z}}}) =: \Phi (\mathcal {H}(\alpha ),{{\varvec{z}}})}\) and also \({\Psi _\alpha ({{\varvec{z}}}) =: \Psi (\mathcal {H}(\alpha ),{{\varvec{z}}})}\). In Eq. 14, specific examples relevant to the Biot medium optimization were given.

Subsequently, optimization problem Eq. 17 is associated with the following inf-sup problem,

$$\begin{aligned} \begin{aligned} \min _{\alpha : \Omega \rightarrow A} \inf _{{{\varvec{z}}}\in S_0} \sup _{ \varvec{\Lambda }\in \mathbb {R}^2, {\tilde{{{\varvec{z}}}}}\in S_0}&\mathcal {L}(\alpha , {{\varvec{z}}},\varvec{\Lambda }, {\tilde{{{\varvec{z}}}}}), \end{aligned} \end{aligned}$$
(18)

with the Lagrangian function

$$\begin{aligned} \begin{aligned} \mathcal {L}(\alpha , {{\varvec{z}}},\varvec{\Lambda }, {\tilde{{{\varvec{z}}}}})&= \Lambda _\Phi \Phi _\alpha ({{\varvec{z}}}) \\&\quad + \Lambda _\Xi \Xi (\mathcal {H}(\alpha )) \\&\quad + \Lambda _\Psi (\Psi _\alpha ({{\varvec{z}}})-\overline{\Psi _0}) \\&\quad +\varphi _{{\textrm{I} \hspace{-1.99997pt}\textrm{H}}(\alpha )}({{\varvec{z}}},{\tilde{{{\varvec{z}}}}}), \end{aligned} \end{aligned}$$
(19)

where \(\varvec{\Lambda }= ( \Lambda _\Phi ,\Lambda _\Psi ) \in \mathbb {R}^2\) are the Lagrange multipliers associated with the objective and constraint functionals \(\Phi\) and \(\Psi\), and \({\tilde{{{\varvec{z}}}}}\in S_0\) are Lagrange multipliers – the adjoint variables — associated with the constraints of the problem Eq. 17.

More explicitly, we can write the Lagrangian function as

$$\begin{aligned} \begin{aligned}&\mathcal {L}(\alpha , ({{\varvec{u}}},p),\varvec{\Lambda }, ({\tilde{{{\varvec{v}}}}},{{\tilde{q}}})) \\&= \Lambda _\Phi \Phi _\alpha ({{\varvec{u}}}) + \Lambda _\Psi (\Psi _\alpha (p)-\overline{\Psi _0}) + \Lambda _\Xi \Xi _\alpha ({\textrm{I} \hspace{-1.99997pt}\textrm{H}})\\&\quad + a_{\Omega } \left( {{{\varvec{u}}}},\,{{\tilde{{{\varvec{v}}}}}}\right) - b_{\Omega } \left( {p+{{\bar{p}}}},\,{{\tilde{{{\varvec{v}}}}}}\right) \\&\quad - g({\tilde{{{\varvec{v}}}}}) + c_{\Omega } \left( {p+{{\bar{p}}}},\,{{{\tilde{q}}}}\right) . \end{aligned} \end{aligned}$$
(20)

Finally, we may temporarily consider the material coefficients \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\) as the optimization variables (although they are parameterized by \(\alpha\)). Further, let us assume a given value \(\varvec{\Lambda }\in \mathbb {R}^2\), whereby the entries of \(\varvec{\Lambda }\) can be positive or negative depending on the desired flow augmentation or reduction. In the numerical examples, we chose \(\Lambda _\Phi > 0\), whereas \(\Lambda _\Psi < 0\) indicates the constraint effect of \(\Psi\) relative to \(\Phi\). Upon denoting the image space of all admissible designs using \(\mathrm{Im}(\mathcal {H}) =\mathcal {H}(A)\) and defining

$$\begin{aligned} U_\text {ad}=&\left\{ {\textrm{I} \hspace{-1.99997pt}\textrm{H}}: \Omega \rightarrow \mathcal {T}\,\vert \, {\textrm{I} \hspace{-1.99997pt}\textrm{H}}(x) \in \mathrm{ Im}(\mathcal {H}) \text { for all } x\in \Omega \right\} , \end{aligned}$$

optimization problem Eq. 17 can be rephrased as the two-criteria minimization problem

$$\begin{aligned} \begin{aligned} \min _{ \begin{array}{c} {\textrm{I} \hspace{-1.99997pt}\textrm{H}}\in U_\text {ad}\end{array} } \ {}&\mathcal {F}({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}), \\ \text{ s.t. }&{{\varvec{z}}}= \mathcal {Z}({\textrm{I} \hspace{-1.99997pt}\textrm{H}})\\&\int _\Omega \rho _\text {m} \le \bar{\rho }_\text {m} \vert \Omega \vert , \end{aligned} \end{aligned}$$
(21)

where

$$\begin{aligned} \mathcal {F}({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}})&= \Lambda _{\Phi } \Phi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}) + \Lambda _{\Psi }\Psi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}) + \Lambda _\Xi \Xi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}}) . \end{aligned}$$

2.6 Adjoint responses and the sensitivity analysis

The sensitivity analysis associated with the optimization problem constitutes an indispensable part of any gradient-based optimization method. Here, we summarize the adjoint state problem and the final sensitivity formulae, while the details are reported in Appendix. We consider \(\alpha\) to represent a general optimization variable that is related to the effective medium parameters \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\). However, one may also consider \(\alpha \equiv {\textrm{I} \hspace{-1.99997pt}\textrm{H}}\) in the context of the free material optimization (FMO). Below, and in Appendix, we use \(\alpha\) to refer to the optimization variable that is to be interpreted as the components of \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}= ({\textrm{A} \hspace{-6.00006pt}\textrm{A}},{{\varvec{B}}},{{\varvec{K}}},\rho _\text {m},R)\), see Sect. 2.4.

The adjoint state \({({\tilde{{{\varvec{v}}}}},{{\tilde{q}}}) \in V_0 \times Q_0}\) is the solution to problem Eq. 60. To allow for the independence of the state adjoint from \(\varvec{\Lambda }\), we define the split

$$\begin{aligned} \begin{aligned} {\tilde{{{\varvec{v}}}}}&= \Lambda _\Phi {\tilde{\varvec{\vartheta }}},\\ {{\tilde{q}}}&= \Lambda _\Phi {{\tilde{q}}}_1 + \Lambda _\Psi {{\tilde{q}}}_2, \end{aligned} \end{aligned}$$
(22)

where \({\tilde{\varvec{\vartheta }}} \in V_0\) and \({{\tilde{q}}}_k \in Q_0\), \(k = 1,2\) satisfy

$$\begin{aligned} \begin{aligned} \forall {{\varvec{v}}}\in V_0:\quad a_{\Omega } \left( {{{\varvec{v}}}},\,{{\tilde{\varvec{\vartheta }}}}\right)&= - g({{\varvec{v}}}),\\ \forall q \in Q_0:\quad c_{\Omega } \left( {q},\,{{{\tilde{q}}}_1}\right)&= b_{\Omega } \left( {q},\,{{\tilde{\varvec{\vartheta }}}}\right) ,\\ \forall q \in Q_0:\quad c_{\Omega } \left( {q},\,{{{\tilde{q}}}_2}\right)&= c_{\Omega } \left( {q},\,{{{\tilde{p}}}}\right) . \end{aligned} \end{aligned}$$
(23)

The sensitivity of the objective and constraint functions involved in the definition of \(\mathcal {F}\) (see problem Eq. 21) are computed using the tensors established in Eq. 64 by combining the state and the adjoint state as follows:

$$\begin{aligned} \begin{aligned} \delta _{\textrm{A} \hspace{-6.00006pt}\textrm{A}}^{\text {tot}}\mathcal {F}&= \Lambda _\Phi \int _\Omega \delta {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e:{{\varvec{e}}}({{{\varvec{u}}}})\otimes {{\varvec{e}}}({{\tilde{\varvec{\vartheta }}}}), \\ \delta _{{\varvec{B}}}^{\text {tot}}\mathcal {F}&= -\Lambda _\Phi \int _\Omega \delta {{\varvec{B}}}_e : P{{\varvec{e}}}({{\tilde{\varvec{\vartheta }}}}),\\ \delta _{{\varvec{K}}}^{\text {tot}}\mathcal {F}&= \int _\Omega \delta {{\varvec{K}}}_e : \left( \Lambda _\Phi \nabla P\otimes \nabla {{\tilde{q}}}_1 \right. \\&\quad \quad \left. +\Lambda _\Psi \left( \nabla P\otimes \nabla {{\tilde{q}}}_2 - \nabla {{\tilde{p}}}\otimes \nabla P\right) \right) . \end{aligned} \end{aligned}$$
(24)

This sensitivity applies to \(\mathcal {J}_\text {phys}\) established in Eq. 42. Since the term \(\Xi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}})\) involved in problem Eq. 17 solely depends on the regularization parameter \({{\varvec{R}}}\), see Eq. 37, we obtain

$$\begin{aligned} \partial _{\textrm{I} \hspace{-1.99997pt}\textrm{H}}\Xi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}})\delta _\alpha {\textrm{I} \hspace{-1.99997pt}\textrm{H}}= \int _\Omega ({{\varvec{R}}}- \mathbb {F}({{\varvec{R}}})\cdot (\delta {{\varvec{R}}}- \partial _{{\varvec{R}}}\mathbb {F}({{\varvec{R}}})\circ \delta {{\varvec{R}}}) \end{aligned}$$

for the regularization term in Eq. 65. In the context of the finite element discretization introduced in Sect. 3, the homogenized coefficients are supplied as constants in each element \(\Omega _e\) of the partitioned domain \(\Omega\). Accordingly, the expressions in Eq. 64 are supplied in an elementwise fashion to the Gauss integration points.

2.7 Design parametrization

The design of the cell \(Y\), which is the decomposition into the solid skeleton \(Y_m\) and the pores \(Y_c\), can be parameterized in several ways. In Hübner et al. (2019), the authors employed a so-called spline-box structure parameterized by design variables defining positions of the spline control polyhedron. Due to its generality, this kind of parametrization is convenient for handling rather arbitrary designs but leads to complicated formulations of design constraints which are needed to preserve essential geometrical requirements (e.g.  positivity of channel cross sections).

In this paper, we employ two specific types of microstructures illustrated in Fig. 4, in which the channels are shaped as a 3D cross (type 1) or a sphere (type 2). Hence, the latter microstructure is characterized by zero permeability and, therefore, we consider dry pores (voids) in the mechanical model. Due to these specific geometries, we can use a rather simple parametrization, which is listed in Table 1. For a unit cell of type 1, \(r_x\) and \(r_y\) refer to the radii of the cylinders pointing in the x- and y-directions, respectively. The third parameter \(\varphi\) describes the cell rotation about axis \(z\). For the unit cell type 2, the spherical void, whose radius is described by \(r_s\), yields an orthotropic material with nearly isotropic elastic properties and thus rotations are not enabled for this cell type. Importantly, box constraints can straightforwardly be imposed on \(r_x,r_y\) and \(r_s\) to ensure geometric feasibility.

Table 1 The parametrization of the pore geometry for the two types of microstructures: 1: the 3D cross, 2: the sphere
Fig. 4
figure 4

Parametrization of unit cells: unit cell type 1 is parameterized by radii \(r_x\) and \(r_y\), both ranging from 0.08 to 0.22, \(r_z = 0.15\) and \(r_s = 0.25\) are kept constant; unit cell type 2 is parameterized by radius \(r_s\) ranging from 0.1 to 0.4

To illustrate the sensitivity of the material properties determined by the homogenized coefficients \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\) in Fig. 5 for unit cell type 2, the elasticity as the only relevant material property is displayed as a function of \(r_s\). In Fig. 6, for unit cell type 1, selected components of the poroelastic tensors and of the permeability are reported as functions of \(r_x\).

Fig. 5
figure 5

Unit cell type 2: dependence of \(A_{1111}\) on parameter \(r_s\)

Fig. 6
figure 6

Unit cell type 1: the dependence of the homogenized coefficients \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\), \({{\varvec{B}}}\), and \({{\varvec{K}}}\) on \(r_x\); \(r_y = 0.15\) is fixed

3 A sequential global programming formulation

The basic description of the SGP algorithm together with its convergence aspects was presented in Semmler et al. (2018), where SGP was applied to a multi-material optimization based on a two-dimensional time harmonic Helmholtz state equation. The setting and procedure described in this manuscript differs from that presented in Semmler et al. (2018) in several key respects, the first of which is that in Semmler et al. (2018) a selection of finitely many fixed materials was considered an admissible set. In this paper, each admissible material is computed by homogenizing a unit cell, which itself is configurable by several geometric parameters. Thus, at each point of the design domain the designer can choose from \(M\) different unit cell types and adjust the geometric parameters for the latter. Secondly, the SGP approach is extended to a multiphysics setting using a slightly different separable approximation and thirdly, a different solution strategy that permits non-analytical and non-differentiable parametrizations is employed for the resultant subproblems. This approach leads to a greater design flexibility. Despite these differences, the approach presented here also shares an important common feature with the procedure outlined in Semmler et al. (2018), namely that separable models are established in terms of (effective) material tensors \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\) rather than their parametrization \(\alpha\). As a result, the parametrization is directly treated at the level of subproblems without further convexification. Thanks to the separable character of the selected first-order model, the resulting generally non-convex subproblems can - in principle - still be solved to global optimality.

The advantages of this approach are twofold. Firstly, due to the separable model functions being able to also capture the non-convex features of the original cost function, a low number of outer iterations equivalent to the number of state problems to be solved are typically required. Secondly, due to the good fit of the separable models with the cost function and the fact that non-convex subproblems are solved to global optimality, the overall algorithm is less start-value dependent and less prone to be trapped in poor local minima. This is in contrast to approaches, for instance (Bendsøe and Kikuchi 1988; Coelho et al. 2008), in which a local model is established that is directly based on the sensitivity of cost functions with respect to the design parametrization \(\alpha\).

In the following, we first derive a fully discretized counterpart for a slightly generalized problem Eq. 21. We subsequently describe in detail how the separable first-order approximations can be constructed and finally present a practical outline of the full SGP algorithm including a generic sub-solver that allows for computing near globally optimal solutions to subproblems using a brute-force strategy.

3.1 A fully discretized two-scale design problem

For the sake of simplicity, the definitions of sets and functions were introduced in Sect. 2.4 and 2.5 based on the assumption that there is only one type of unit cell such that \(M=1\). Here, for a more general setting, we consider \(M\) unit cell types, each having \(n_i\) design parameters, and introduce index set \(I := \{1, \dots , M\}.\) For each unit cell type \(i \in I\), the admissibility set is defined in terms of box and other purely geometrical constraints. By choosing a suitable parametrization, we can identify these with (geometric) parameter sets such as

$$\begin{aligned} A_i = [{\underline{{{\varvec{a}}}}}_i,{\overline{{{\varvec{a}}}}}_i] \subset \mathbb {R}^{n_i}, \end{aligned}$$
(25)

with \({\underline{{{\varvec{a}}}}}_i, {\overline{{{\varvec{a}}}}}_i \in \mathbb {R}^{n_i}\) being the lower and upper bound vectors constraining the corresponding parameter vector \(\varvec{\alpha }_i \in \mathbb {R}^{n_i}\).

Remark 4

We note that although the parameters in Eq. 25 are always used to vary the geometrical properties of the unit cell in this manuscript, variations in the material parameters could be described in the same way. Thus, SGP can handle both of these situations.

We further define for all \(i \in I\) the maps

$$\begin{aligned} \mathcal {H}_i: {\left\{ \begin{array}{ll} A_i &{} \rightarrow \mathcal {T}\\ \varvec{\alpha }_i &{}\mapsto ({\textrm{A} \hspace{-6.00006pt}\textrm{A}}, {{\varvec{B}}}, {{\varvec{K}}}, \rho _\text {m}, R), \end{array}\right. } \end{aligned}$$
(26)

where \(\mathcal {H}_i(\varvec{\alpha })\) performs the homogenization procedure described in Sect. 2.5. Fig. 7 illustrates the components of \(\mathcal {H}_i(\varvec{\alpha }_i)\).

Fig. 7
figure 7

For each unit cell type, we store data collections such as geometric parameters, physical properties, and further labels

We denote the union of the ranges of all \(\mathcal {H}_i\) by

$$\begin{aligned} H {:}{=}\bigcup _{i=1}^{M} \mathcal {H}_i(A_i) \end{aligned}$$
(27)

and thereby generalize the set of admissible design functions to become

$$\begin{aligned} U_\text {ad}=&\left\{ {\textrm{I} \hspace{-1.99997pt}\textrm{H}}: \Omega \rightarrow \mathcal {T}\,\vert \, {\textrm{I} \hspace{-1.99997pt}\textrm{H}}(x) \in H \text { for all } x \in \Omega \right\} . \end{aligned}$$

Hence, the state problem operator is given by

$$\begin{aligned} \mathcal {Z}: {\left\{ \begin{array}{ll} U_\text {ad}&{} \rightarrow V_{{\varvec{u}}}(\Omega , \mathbb {R}^3) \times V_p(\Omega , \mathbb {R}) \\ {\textrm{I} \hspace{-1.99997pt}\textrm{H}}&{}\mapsto {{\varvec{z}}}= ({{\varvec{u}}},p), \end{array}\right. } \end{aligned}$$
(28)

with a displacement function \({{\varvec{u}}}\) and a hydraulic pressure function p together with the respective function spaces \(V_{{\varvec{u}}}(\Omega , \mathbb {R}^3)\) and \(V_p(\Omega , \mathbb {R})\).

Finally, we use a slightly more general resource function than in Sects. 2.4, 2.5 as follows:

$$\begin{aligned} \rho : U_\text {ad}\rightarrow \mathbb {R}\end{aligned}$$
(29)

In this context, a concretization could be the total volume fraction of a specific material phase (see description of \({\bar{\rho }}_m\) in Sect. 2.5).

Based on these definitions, we then formulate an FMO-type problem

$$\begin{aligned} \begin{aligned} \min _{{\textrm{I} \hspace{-1.99997pt}\textrm{H}}\in U_\text {ad}} \quad \mathcal {F}({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}) :=&\Lambda _\Phi \Phi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}}) + \Lambda _\Psi \Psi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}},{{\varvec{z}}})\\&+ \Lambda _\Xi \Xi ({\textrm{I} \hspace{-1.99997pt}\textrm{H}}) \\ \text {s.t.} \quad \quad \quad \quad {{\varvec{z}}}=&\mathcal {Z}({\textrm{I} \hspace{-1.99997pt}\textrm{H}}), \\ \rho ({\textrm{I} \hspace{-1.99997pt}\textrm{H}}) \le&{\bar{\rho }}_m, \end{aligned} \end{aligned}$$
(30)

where \({\bar{\rho }}_m\in \mathbb {R}\) is the resource constraint value, and the cost functions \(\Phi\), \(\Psi\), and \(\Xi\) together with their weights \(\Lambda _\Psi , \Lambda _\Phi , \Lambda _\Xi\) which were already introduced in Sect. 2.5.

Although problem Eq. 30 is formulated directly in the tensor variable \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\), a realization of the feasibility condition \({\textrm{I} \hspace{-1.99997pt}\textrm{H}}\in U_\text {ad}\) would force us to evaluate the homogenization maps \(\mathcal {H}_i \; (i\in I)\). This has the consequence that for each evaluation of the cost function, a homogenization procedure, which contains a series of cell problems, has to be conducted. To address this challenge, we follow Bendsøe and Kikuchi (1988) and only carry out the homogenization procedure for discrete samples in the design parameter space. For each unit cell type \(i\), we introduce a grid with nodes \(A_i ^{\text {nodes}} \subseteq A_i\) and effective material coefficients are only computed via homogenization at the sampled nodes of this grid. In addition, we define a piecewise cubic Hermite interpolator for these samples to realize the continuous mapping

$$\begin{aligned} {\tilde{\mathcal {H}}}_i: {\left\{ \begin{array}{ll} A_i \rightarrow \mathcal {T}\\ \varvec{\alpha }_i \mapsto ({\textrm{A} \hspace{-6.00006pt}\textrm{A}}, {{\varvec{B}}}, {{\varvec{K}}}, \rho _\text {m}, R), \end{array}\right. } \end{aligned}$$
(31)

for all \(i \in I\). We denominate this procedure as the offline phase of a two-scale optimization approach, as it can be performed independently from the online optimization procedure that is subject to constraints that go beyond the box constraints on the parameter sets as shown in Eq. 25. Fig. 8 provides a sketch based on unit cell type 1 for an exemplary sampling with three values for each of the design parameters \(r_x\) and \(r_y\). In the offline phase, homogenization is applied to these samples and the resulting data, such as effective material coefficients and volume fractions (see Fig. 7), are stored for the optimization in the online phase.

Fig. 8
figure 8

Example of database generation based on unit cell type 1: depicts \(A_1^{\text {nodes}}\) with 3 samples per parameter, b contains effective material coefficients obtained by applying homogenization map \({\mathcal {H}_1}\) to \(A_1^{\text {nodes}}\), and c is the database with effective material coefficients which is obtained by evaluating the interpolation function \({\tilde{\mathcal {H}}}\) on a finer parameter grid \(A_1^{\text {grid}}\) with 5 samples per parameter. The images of \({\mathcal {H}_1}\) and \({\tilde{\mathcal {H}}}_1\) coincide at the interpolation nodes, e.g.  \({\tilde{\mathcal {H}}}_1(0.08,0.08) = \mathcal {H}_1(0.08,0.08)\)

For the case \(M=1\), the conventional approach would be to perform the optimization based on the interpolated functions \({\tilde{\mathcal {H}}}_1\) over the full parameter set \(A_1\). However, since this is not directly possible for \(M>1\), one way to get around this would be to introduce another interpolation between the different unit cell types in a similar way as it is done in discrete material optimization (DMO) by Hvejsel and Lund (2011). Instead of this, we introduce design grids

$$\begin{aligned} A^\text {grid}_i \subset A_i, \; i \in I, \end{aligned}$$
(32)

for all unit cell types, whereby only elements of \(A^\text {grid}_i, \; i \in I\) are considered in the optimization process. In this way, only an approximate solution to the design problem can generally be computed. However, it will be shown that this strategy combines well with the separable non-convex model introduced later in Sect. 3.2. Moreover, the resulting error can easily be controlled by the distance and number of samples in \(A^\text {grid}_i, \; i \in I\).

As we only optimize on \(A^\text {grid}_i, \; i \in I\), Eq. 27 is approximated by

$$\begin{aligned} {\tilde{H}}{:}{=}\bigcup _{i=1}^{M} {\tilde{\mathcal {H}}}_i(A^\text {grid}_i). \end{aligned}$$
(33)

We note that elements of \({\tilde{H}}\) can already be precomputed in the offline phase, which generally leads to a higher memory requirement, although it additionally reduces the online computation time.

Finally, we briefly describe a finite element approximation with \({n_\text {el}}\) finite elements and therefore introduce element index set \(E {:}{=}\{1, \dots , {n_\text {el}}\}\) to indicate a finite element distinctively by its index \(e \in E\). We further assume that the design on each element is constant and can thus be represented by

$$\begin{aligned} {\textbf{I} \hspace{-1.99997pt}\textbf{H}}\in {\tilde{H}}^{{n_\text {el}}}. \end{aligned}$$

Through the definition of \({\tilde{H}}\) in Eq. 33, this condition already states that only material tensors are eligible for which a unit cell type i and a parameter vector \(\varvec{\alpha }_i\) in \(A^\text {grid}_i\) exist. Moreover, we replace the physical functions \(\Phi\) and \(\Psi\), the regularization function \(\Xi\), and the solution operator \(\mathcal {Z}\) by their discretized counterparts, e.g. 

$$\begin{aligned} \mathcal {Z}_h: {\left\{ \begin{array}{ll} {\tilde{H}}^{{n_\text {el}}} \rightarrow \mathbb {R}^{n_{\text {dof}}} \\ {\textbf{I} \hspace{-1.99997pt}\textbf{H}}\mapsto ({\boldsymbol{\mathrm{u}}},{\boldsymbol{\mathrm{p}}}) \end{array}\right. }, \end{aligned}$$
(34)

where \(n_{\text {dof}}\) is the dimension of the discrete state solution space. The discretized version of the resource function \(\rho\) Eq. 29 is

$$\begin{aligned} \rho _h: {\left\{ \begin{array}{ll} {\tilde{H}}^{{n_\text {el}}} \rightarrow \mathbb {R}\\ {\textbf{I} \hspace{-1.99997pt}\textbf{H}}\mapsto \rho _h. \end{array}\right. } \end{aligned}$$
(35)

Hence, the optimization problem, now fully discretized in the design and state spaces, reads

$$\begin{aligned} \begin{aligned} \min _{{\textbf{I} \hspace{-1.99997pt}\textbf{H}}\in {\tilde{H}}^{{n_\text {el}}}} \max _{\lambda _\rho \in \mathbb {R}^+}\quad&\mathcal {F}_h({\textbf{I} \hspace{-1.99997pt}\textbf{H}},{\boldsymbol{\mathrm{z}}},\lambda _\rho ) \\ \text {s.t.} \quad&{\boldsymbol{\mathrm{z}}}=\mathcal {Z}_h({\textbf{I} \hspace{-1.99997pt}\textbf{H}}), \end{aligned} \end{aligned}$$
(36)

with

$$\begin{aligned} \begin{aligned} \mathcal {F}_h({\textbf{I} \hspace{-1.99997pt}\textbf{H}},{\boldsymbol{\mathrm{z}}}, \lambda _\rho ) :=&\Lambda _\Phi \Phi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}},{\boldsymbol{\mathrm{z}}}) + \Lambda _\Psi \Psi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}},{\boldsymbol{\mathrm{z}}})\\&+\lambda _\rho \left( \rho _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}})-{\bar{\rho }}_m\right) + \Lambda _\Xi \Xi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}}). \end{aligned} \end{aligned}$$

We successfully eliminated the resource constraint by means of the Lagrange formalism. In this paper, we use a bisection strategy as introduced in Sigmund (2001) for the framework of the well-known OCM method to compute \(\lambda _\rho\). We finally specialize the regularization term to become

$$\begin{aligned} \Xi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}}) = \frac{1}{2}\Vert {{\varvec{R}}}- \mathbb {F}({{\varvec{R}}}) \Vert ^2, \end{aligned}$$
(37)

where \(\mathbb {F}\) denotes a standard density filter function (see, e.g.  Bourdin (2001)) with

$$\begin{aligned} \mathbb {F}: \mathbb {R}^{n_\text {el}}\rightarrow \mathbb {R}^{n_\text {el}}\end{aligned}$$
(38)

and \({{\varvec{R}}}\) is the vector of regularization labels associated with all finite elements \(e \in E\).

3.2 Construction of subproblems

For any sequential programming algorithm, a sequence of subproblems first has to be defined. Here, in each iteration \(k\), we construct separable first-order approximations about an expansion point \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}^k \in {\tilde{H}}^{n_\text {el}}\) for the components of the cost function

$$\begin{aligned} \mathcal {J}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}, \lambda _\rho ) := \mathcal {F}_h({\textbf{I} \hspace{-1.99997pt}\textbf{H}},{{\varvec{z}}}, \lambda _\rho ) \end{aligned}$$
(39)

of the original optimization problem in Eq. 36. The model problem is

$$\begin{aligned} \min _{{\textbf{I} \hspace{-1.99997pt}\textbf{H}}} \max _{\lambda _\rho \in \mathbb {R}} \quad&\mathcal {J}_\text {sep}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{H}}, \lambda _\rho ; {\textbf{I} \hspace{-1.99997pt}\textbf{H}}^k \right) \end{aligned}$$
(40)

where our model function is defined as

$$\begin{aligned}&\mathcal {J}_\text {sep}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{H}},\lambda _\rho ; {\textbf{I} \hspace{-1.99997pt}\textbf{H}}^k\right) := \sum _{e\in E} \mathcal {J}_{\text {sep},e}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e, \lambda _\rho ;{\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e^k\right) \nonumber \\&= \sum _{e\in E} {\tilde{\mathcal {J}}}_\text {phys}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e;{\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e^k\right) + \lambda _\rho {\tilde{\mathcal{J}}}_\text {vol}((\rho _\text {m})_e) \nonumber \\&+ \Lambda _\Xi {\tilde{\mathcal {J}}}_{\text {reg},e}(R_e;R_e^k) + \Lambda _g{\tilde{\mathcal {J}}}_\text {glob}({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e;{\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k) \end{aligned}$$
(41)

with

$$\begin{aligned}&{\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e := ({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e,{{\varvec{B}}}_e,{{\varvec{K}}}_e) \in \mathbb {S}^6 \times \mathbb {S}^3 \times \mathbb {S}^3, \nonumber \\&{\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e^k := ({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k,{{\varvec{B}}}_e^k,{{\varvec{K}}}_e^k) \in \mathbb {S}^6 \times \mathbb {S}^3 \times \mathbb {S}^3, \nonumber \\&{\textbf{I} \hspace{-1.99997pt}\textbf{H}}, {\textbf{I} \hspace{-1.99997pt}\textbf{H}}^k \in \, {\tilde{H}}^{n_\text {el}}. \end{aligned}$$

In the following, we describe each component of \(\mathcal {J}_\text {sep}\) in more detail.

For this, we split \(\mathcal {J}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}, \lambda _\rho )\) as

$$\begin{aligned} \mathcal {J}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}, \lambda _\rho ) = \mathcal {J}_\text {phys}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}) + \lambda _\rho \mathcal {J}_\text {vol}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}) + \Lambda _\Xi \mathcal {J}_\text {reg}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}) \end{aligned}$$

with

$$\begin{aligned} \mathcal {J}_\text {phys}({\textbf{I} \hspace{-1.99997pt}\textbf{H}})&:= \Lambda _\Phi \Phi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}}, {{\varvec{z}}}) + \Lambda _\Psi \Psi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}},{{\varvec{z}}}), \end{aligned}$$
(42)
$$\begin{aligned} \mathcal {J}_\text {vol}({\textbf{I} \hspace{-1.99997pt}\textbf{H}})&:= \rho _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}}) - {\bar{\rho }}_m, \end{aligned}$$
(43)
$$\begin{aligned} \mathcal {J}_\text {reg}({\textbf{I} \hspace{-1.99997pt}\textbf{H}})&:= \Xi _h({\textbf{I} \hspace{-1.99997pt}\textbf{H}}). \end{aligned}$$
(44)

From tuple \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}\), only the effective material coefficients \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}, {{\varvec{B}}}\) and \({{\varvec{K}}}\) are relevant for \(\mathcal {J}_\text {phys}\). Consequently, for \(\mathcal {J}_\text {phys}\), we define a separable approximation of type

$$\begin{aligned} \sum _{e \in E} {\tilde{\mathcal {J}}}_\text {phys}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e;{\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e^k\right) , \end{aligned}$$
(45)

where \({\tilde{\mathcal {J}}}_\text {phys}\) is the following generalization of the first-order MMA-like model proposed in Stingl et al. (2009) for functions defined in tensor variables:

$$\begin{aligned}&{\tilde{\mathcal {J}}}_\text {phys}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{D}}_e;{\textbf{I} \hspace{-1.99997pt}\textbf{D}}^k\right) \nonumber \\&= C_{\text {phys}} - \left\langle {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k \left[ \frac{\partial \mathcal {J}_\text {phys}({\textbf{I} \hspace{-1.99997pt}\textbf{D}}^k)}{\partial {\textrm{A} \hspace{-6.00006pt}\textrm{A}}}\right] _e{\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k, {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^{-1} \right\rangle _{\mathbb {S}^6} \nonumber \\&\quad - \left\langle {{\varvec{B}}}_e^k \left[ \frac{\partial \mathcal {J}_\text {phys}({\textbf{I} \hspace{-1.99997pt}\textbf{D}}^k)}{\partial {{\varvec{B}}}}\right] _e {{\varvec{B}}}_e^k, {{\varvec{B}}}_e^{-1} \right\rangle _{\mathbb {S}^3} \nonumber \\&\quad - \left\langle {{\varvec{K}}}_e^k \left[ \frac{\partial \mathcal {J}_\text {phys}({\textbf{I} \hspace{-1.99997pt}\textbf{D}}^k)}{\partial {{\varvec{K}}}}\right] _e {{\varvec{K}}}_e^k, {{\varvec{K}}}_e^{-1} \right\rangle _{\mathbb {S}^3}. \end{aligned}$$
(46)

Here, \(C_{\text {phys}}\) is a constant that is chosen to establish the zeroth-order correctness of the model and \(<\cdot ,\cdot >_{\{\mathbb {S}^6,\mathbb {S}^3\}}\) denotes the Frobenius inner products for matrices from \(\mathbb {S}^6\) and \(\mathbb {S}^3\), respectively. Furthermore, in contrast to the model in Stingl et al. (2009), we refrain from working with flexible generalized asymptotes \(L_e^{\textrm{A} \hspace{-6.00006pt}\textrm{A}}\in \mathbb {S}^6, L_e^{{\varvec{B}}}, L_e^{{\varvec{K}}}\in \mathbb {S}^3\) and simply choose all of them to be zero matrices. The partial derivatives of \(\mathcal {J}_\text {phys}\) with respect to the material coefficients \({\textrm{A} \hspace{-6.00006pt}\textrm{A}},{{\varvec{B}}}\) and \({{\varvec{K}}}\) can easily be extracted from the expressions in Eq. 66.

The function \(\mathcal {J}_\text {vol}\) that describes the fraction of utilized matrix material is separable by definition and solely depends on \(\rho _\text {m}\). We accordingly choose

$$\begin{aligned} {\tilde{\mathcal {J}}}_\text {vol}((\rho _\text {m})_e;\rho _\text {m}^k) = (\rho _\text {m})_e. \end{aligned}$$
(47)

The function \(\mathcal {J}_\text {reg}\) given in Eq. 44 solely depends on the regularization label \({{\varvec{R}}}\in \mathbb {R}^{n_\text {el}}\), which is a component of tuple \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}\in {\tilde{H}}^{n_\text {el}}\). The separable approximation of \(\mathcal {J}_\text {reg}\) is thus of the form

$$\begin{aligned} \sum _{e \in E} {\tilde{\mathcal {J}}}_{\text {reg},e}(R_e;{{\varvec{R}}}^k), \end{aligned}$$
(48)

where

$$\begin{aligned}&{\tilde{\mathcal {J}}}_{\text {reg},e}(R_e;{{\varvec{R}}}^k) \nonumber \\&= \frac{1}{2}\, \bigg \Vert {\widetilde{R}}_e\left( R_e;{{\varvec{R}}}^k\right) - \left[ \mathbb {F}\left( {\widetilde{R}}_e\left( R_e;{{\varvec{R}}}^k\right) \right) \right] _e \bigg \Vert ^2. \end{aligned}$$
(49)

In Eq. 49, we further employ the function

$$\begin{aligned} {\widetilde{R}}_e\left( R;{{\varvec{R}}}^k\right) {:}{=}\left( R_1^{k}, \dots , R_{e-1}^{k}, R, R_{e+1}^{k}, \dots , R_{{n_\text {el}}}^{k} \right) , \end{aligned}$$

in which the regularization label is varied only in the e-th entry by the value \(R\), and contributions of the expansion point \({{\varvec{R}}}^k\) are used in the neighbouring entries. It is noted that Eq. 49 can be reduced to a convex quadratic function of type

$$\begin{aligned} a_e R_e^2 + b_e R_e + c_e, \end{aligned}$$

by precomputing \(a_e,b_e,c_e \in \mathbb {R}\), which are independent of \(R_e\).

Finally, we implement a step size control for the design from one iteration to the next by adding

$$\begin{aligned} \sum _{e \in E}{\tilde{\mathcal {J}}}_\text {glob}\left( {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e,{\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k\right) = \sum _{e \in E}\frac{1}{2}\left\| {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e - {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k \right\| ^2 \end{aligned}$$
(50)

with a positive factor \(\Lambda _g\) to the model cost function. Alternatively, a more general globalization strategy similar to the regularization approach with the regularization label \(R\) in Eq. 49 could be pursued by introducing particular globalization labels. Here, we assume that evaluating the design step size based on the stiffness tensor \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e\) and \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^k\) is sufficient and, in particular, the uniqueness of the globalization labels, such that

$$\begin{aligned} {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e = {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e' \Rightarrow \varvec{\alpha }_e = \varvec{\alpha }_e', \end{aligned}$$
(51)

is satisfied.

3.3 The sequential global programming algorithm with a brute-force sub-solver

Having the separable first-order approximations of the objective function and penalization terms at hand, we are now able to formulate the iterative scheme that is described by Algorithm 1. We make extensive use of the separable structure of

$$\begin{aligned} \mathcal {J}_\text {sep}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{H}}, \lambda _\rho ; {\textbf{I} \hspace{-1.99997pt}\textbf{H}}^k\right) = \sum _{e \in E} \mathcal {J}_{\text {sep},e}\left( {\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e, \lambda _\rho ;{\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e^k\right) \end{aligned}$$

and individually solve the subproblems of each iteration k for each finite element \(e \in E\). This is done by evaluating \(\mathcal {J}_{\text {sep},e}\) for all \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e \in {\tilde{H}}\), which are computed on \(A^\text {grid}_i\) (see example in Fig. 8c). Based on these evaluations, we then identify a global minimizer \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e^*\). Here, it is important to note that a unique geometric cell label \(\varvec{\alpha }_e\) is associated with each \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e\) and thus, by determining \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}_e^*\), we also determine the respective \(\alpha _e^*\) and material class index \(i^*\).

In Algorithm 2, a bisection strategy is applied to treat the resource constraint. Alternatively, dual solution strategies could be used instead, especially when multiple constraints are considered, as for instance shown in Fleury (1993). For the sake of simplicity, it is assumed that the resource constraint is always active at a minimizer and, if no resource constraint is applied, the outer loop in Algorithm 2 is simply omitted.

After each outer iteration of Algorithm 1, the original cost function \(\mathcal {J}\) is evaluated with the current solution of the subproblems \({\textbf{I} \hspace{-1.99997pt}\textbf{H}}^*\). If a descent in \(\mathcal {J}\) was achieved, we continue the iterative process. However, if this is not the case, we employ the step width control by increasing the multiplier \(\Lambda _g\) of the globalization term Eq. 50 and subsequently resolve the subproblems using Algorithm 2.

figure a
figure b

4 Numerical results

In this section, we demonstrate the capabilities of SGP by means of numerical examples. The setting of the poroelastic problem is depicted in Fig. 9. It is a recapitulation of the macroscopic problem setting from Hübner et al. (2019), where the authors selected a finite element from the macroscopic domain and optimized the shape of the local microstructure via a spline-box approach. In the present paper, we provide an extension to this example by solving the two-scale optimization problem with the SGP method described in Sect. 3. In so doing, we work with a rather coarse discretization of the macroscopic domain because such a discretization is sufficient to demonstrate the capabilities of SGP as described above. On the other hand, in Algorithm 2 it is evident that the number of macroscopic elements enters the computational complexity for SGP linearly and thus, in principle, there is no obstacle to working with finer discretizations. Furthermore, for all results presented in Sect. 4.1 and Sect. 4.2, it was not necessary to employ a globalization strategy to control design changes from one iteration to the next and we thus set the globalization parameter \(\Lambda _g= 0\). Hence, it is only when turning on the regularization in Sect. 4.3 that we also employ the globalization term described in Eq. 50.

Fig. 9
figure 9

Setup of the macroscopic problem: a mechanical traction force \(f \!=\! (0,-1,0)^\top\) acts on a part of the body’s surface (red) while support is provided on \(\Gamma _D\) and pressure values \(p_1=1.0\) and \(p_2=0.5\) are prescribed on \(\Gamma _{p_1}\) and \(\Gamma _{p_2}\). The design domain is discretized by \(15 \times 10 \times 2\) hexahedra

4.1 Optimization with one unit cell type

Let us consider unit cell type 1 as it is depicted in Fig. 4. The geometry consists of three joint cylindrical fluid channels filled with glycerine (Young’s modulus \(4.35\; {\text{GPa}}\), dynamic viscosity \({0.95\,\mathrm{\text {Pa}\text {s}}}\)) that are perpendicular to each other and intersect a hollow sphere in the middle of the cell domain. These channels are embedded in matrix material made of polystyrene with a Young’s modulus of \(3.9\; {\text{GPa}}\) and a dynamic viscosity of \({0.34\,\mathrm{\text {Pa}\text {s}}}\). The feasible range for the geometric design parameters is \(A_1 = [0.08,0.22]^2\). Thus, in each finite element \(e \in E\), we have the design parameters \(\varvec{\alpha }_1 = (r_x,r_y)^\top \in A_1\) to steer the radii of the channels pointing in the \(x\)- and \(y\)-directions. The radius of the fluid channel that points in the \(z\)-direction (out-of-plane) is kept constant. At the boundaries of the design parameter space, the volume fractions of the stiff material phase are \(\rho _h\left( \mathcal {H}_1\left( [0.08,0.08]^\top \right) \right) = 0.7154\) and \(\rho _h\left( \mathcal {H}_1\left( [0.22,0.22]^\top \right) \right) = 0.879\). The directional stiffness of the softest version of this unit cell is visualized in Fig. 10 by means of a polar plot.

Fig. 10
figure 10

Visualization of the directional stiffness of a unit cell with maximally opened fluid channels (\(r_x = 0.22, r_y = 0.22\)). This spherical plot was generated by drawing the entry \(A_{1111}\) of the rotated material tensor \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\in \mathbb {S}^{6}\) for varying rotation angles \((\theta , \varphi ) \in [0,2\pi ]^2\) about the z- and y-axes. For instance, the sketched arrow points to \((\pi /2,0)\) and its length of 1.9457 comes from the first entry of the material tensor that is rotated by \(\pi /2\) about the z-axis

The interpolation of \(\mathcal {H}_1\) is based on \(A_1^{\text {nodes}}\). Here, \(A_1^{\text {nodes}}\) is the parameter grid spanned by the components of \(\varvec{\alpha }_1\), and for each component we chose 11 equally spaced samples. The subproblems of the SGP algorithm are solved based on the discrete parameter grid \(A_1^\text {grid}\). For this grid, we chose a sample size of 28 for each of the two channel radii and again, the samples were equally spaced.

For the following optimization results with the weighted sum formulation of structural compliance and fluid flux, we employ an initial design guess, visualized in Fig. 11, that is neither particularly favourable for the mechanical nor for the fluid flow state.

Fig. 11
figure 11

Homogeneous initial design with \({r_x=r_y=0.15}\), no cell rotation, and physical performance \(\Phi _{h,\text {init}} = 28.9\) and \(\Psi _{h,\text {init}} = 0.135\)

The visualization style that we chose for our optimized designs is outlined in the following. During the optimization process, each macroscopic element of the finite element discretization represents a microstructured material whose properties are obtained by homogenization. In Fig. 11, and upcoming similar design representations, one macroscopic element is substituted by one unit cell geometry of type 1 or 2 with the respective optimized geometrical sizes, whereby this choice solely serves the purpose of visualization.

For now, we choose \(\Lambda _\Psi = -10\) and solve optimization problem Eq. 36. The resulting optimized design is depicted in Fig. 12a. Note that the design domain is discretized by two finite element layers in the \(z\)-direction. We found that, for all numerical results presented in this paper, the differences between the optimized designs at layer \(z=0\) and layer \(z=1\) are so small that they cannot be visually discerned and hence we will only show the optimized designs for layer \(z=0\) in the rest of the paper.

Fig. 12
figure 12

Optimization result for \(\Lambda _\Psi = -10\) and fixed local microstructure orientation (no rotation) with \(\Phi _{h,\text {opt}}=27.25\) and \(\Psi _{h,\text {opt}}=0.275\) for the optimized design in a, b. The initial guess is the design shown in Fig. 11. In c, the mechanical state of the optimized design is visualized by deforming the domain by the physical displacements and the strain energy is shown in colour. In e, the flow direction is visualized by equally scaled arrows and the colours indicate the magnitude of the flow field

The SGP stopped after 19 iterations because the difference between the objective values of the old and new design was found to be 0. We note that this comparably low number of iterations is related to the fineness of the design discretization and using more grid points could thus lead to a slightly larger number of iterations. On the other hand, in the experiments that we performed in this regard, the visualizations of the results that were obtained could be hardly distinguished, see Fig. 13, which is why we do not report the results derived from different choices of \(A^\text {grid}_i, \; i \in I\).

Fig. 13
figure 13

Two optimized designs for different sample sizes of \(A^\text {grid}_1\). a 10 samples each for \(r_x\) and \(r_y\) and 180 samples for \(\varphi\). b 28 samples each for \(r_x\) and \(r_y\) and 180 samples for \(\varphi\). Here, \(\Lambda _\Psi =1\) and \(\Lambda _\Psi =-10\). The visual differences are barely perceptible, although b has a 1.5% lower compliance and a 1.7% higher flux than a

A second observation is that the fluid channels in resulting designs are fully connected, which is due to the fact that no rotational design degrees of freedom were used. On the other hand, we will show that the performance significantly improves if local rotations of the microstructures are also allowed.

4.1.1 Optimized local in-plane rotation of microstructures

We introduce angle variable \(\varphi \in [0,\pi ]\) to allow the in-plane rotation of the microstructure about the z-axis. The effective material coefficients are rotated by \(\varphi\) with the following analytical expressions:

$$\begin{aligned} {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_\text {rot}(r_x,r_y,\varphi )&= {{\varvec{Q}}}_6(\varphi ) {\textrm{A} \hspace{-6.00006pt}\textrm{A}}(r_x,r_y){{\varvec{Q}}}_6(\varphi )^T, \nonumber \\ {{\varvec{B}}}_\text {rot}(r_x,r_y,\varphi )&= {{\varvec{Q}}}_3(\varphi ) {{\varvec{B}}}(r_x,r_y){{\varvec{Q}}}_3(\varphi )^T, \nonumber \\ {{\varvec{K}}}_\text {rot}(r_x,r_y,\varphi )&= {{\varvec{Q}}}_3(\varphi ) {{\varvec{K}}}(r_x,r_y){{\varvec{Q}}}_3(\varphi )^T, \end{aligned}$$
(52)

where \({{\varvec{Q}}}_6 \in \mathbb {R}^{6 \times 6}\) are rotation matrices for the stiffness tensor \({\textrm{A} \hspace{-6.00006pt}\textrm{A}}\) in Voigt notation and \({{\varvec{Q}}}_3 \in \mathbb {R}^{3 \times 3}\) are rotation matrices for the Biot coupling and permeability tensor. We note that no additional evaluations of the homogenization operators are required as the effective material tensors are rotated instead of the microstructure. Furthermore, \(\varphi\) is discretized with 180 steps for the brute-force approach to solve the SGP subproblem with Algorithm 2.

Fig. 14
figure 14

Optimized design with rotational design degrees of freedom and respective physical states for \(\Lambda _\Phi = 1\) and \(\Lambda _\Psi = -10\), with \(\Phi _{h,\text {opt}}=27.1\) and \(\Psi _{h,\text {opt}}=0.413\)

Now we again set \(\Lambda _\Phi = 1\) and \(\Lambda _\Psi = -10\) as shown in Fig. 12 and observe in Fig. 14a, b how the design evolves as both physical models counteract each other. Firstly, the mechanical model strives for as much material as possible to minimize the compliance while the fluid flux is maximized when there is less material in the design domain. The convergence plot for the merit function \(\mathcal {J}\) and compliance function \(\Phi _h\), displayed in Fig. 15, shows that the compliance drops in the first iteration and then slightly increases before it finally settles around the value of 27.0. In general, in our numerical studies, we observed that the largest design changes occur at the beginning within a few iterations. Afterwards, minor changes are made to further tweak the objective. This behaviour shows the good quality of the SGP model and its approximations that are described in Sect. 3. The design change from one outer iteration to the next one, visualized in Fig. 15, is measured with

$$\begin{aligned} \frac{1}{{n_\text {el}}}\left( \sum _{e \in E} \Vert {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^{k+1} - {\textrm{A} \hspace{-6.00006pt}\textrm{A}}_e^{k} \Vert _1 + \Vert {{\varvec{K}}}_e^{k+1} - {{\varvec{K}}}_e^{k}\Vert _1\right) \end{aligned}$$

for \(k =0,1,\dots\) In this example, the SGP algorithm stopped after 38 iterations because the stopping criterion \(\mathcal {J}_\text {diff}= \mathcal {J}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}^{k+1}) - \mathcal {J}({\textbf{I} \hspace{-1.99997pt}\textbf{H}}^{k}) < 1\text {e}{-6}\), see Algorithm 1, was fulfilled. Furthermore, the numbers also show that the design change from iteration 37 to 38 is exactly 0 which means that no better local solution could be found without refining the design grid.

If we now closely examine the intermediate designs shown in Fig. 14a, it is again evident that the initial guess is neither particularly favourable for the mechanical nor for the fluid flow state. After the first iteration, we see in Fig. 14a that some channels that are close to the outflow region are opened wide and cells closer to the mechanical support were adjusted to have narrower fluid channels to improve the mechanical performance of the design. In comparison with the solution in Fig. 12 where the orientation was fixed, this solution has a 1% smaller compliance and a fluid flux that is approximately 47% higher.

Fig. 15
figure 15

Convergence plots for the design shown in Fig. 14

We conclude this subsection by presenting a Pareto front for this type of bicriterial weighted sum formulation in Fig. 16. All optimizations were based on the homogeneous initial guess that is shown in Fig. 11. This implies that no warm starting technique for the rotation variable, as, for instance, proposed by Pedersen (1989), Norris (2005), was required to proceed from one point to the next on the Pareto curve. Nevertheless, a Pareto curve is obtained in which none of the points is dominated by another. The optimized designs for various choices of \(\Lambda _\Psi\) are visualized in Fig. 17. We observed that with decreasing \(\Lambda _\Psi\), the compliance-minimized design (Fig. 17a) is almost smoothly transformed into a fully flux-based design (Fig. 17b). Furthermore, the optimized local orientation fields, visualized in Fig. 17, all seem rather smooth, although no regularization technique was applied. The combination of the ability to obtain smooth orientation fields without particular design initialization and any regularization indicates that the SGP method can avoid poor local solutions and has little dependence on the initial guess. The number of outer iterations required to solve the problems corresponding to all points on the Pareto curve varied between 3 and 38 and did not increase with increasing design degrees of freedom. The rather low number of 3 iterations was obtained for the extreme case where \(\Lambda _\Psi =0\).

Fig. 16
figure 16

Pareto front for varying \(\Lambda _\Psi\) in the weighted sum formulation \(\mathcal {J}_\text {phys}= \Phi _h +\Lambda _\Psi \Psi _h\). The optimization was based on cells of type 1 and the initial design was always \([0.15,0.15,0]^{n_\text {el}}\). As we are minimizing \(\Phi _h\) and maximizing \(\Psi _h\), a point \(P=(P_{\Phi _h},P_{\Psi _h})\) in the image space of \(\Phi _h\) and \(\Psi _h\) dominates a point \(Q=(Q_{\Phi _h},Q_{\Psi _h})\) if \(P_{\Phi _h} \le Q_{\Phi _h}\) and \(P_{\Psi _h} \ge Q_{\Psi _h}\)

Fig. 17
figure 17

Visualization of the optimized designs associated with the labelled points in Fig. 16

4.1.2 Scalability

We chose a rather coarse, albeit sufficient, resolution of the design domain (Fig. 9) for the numerical examples shown in this section. However, to practically illustrate that our optimization model scales linearly with the number of design elements, we also solved the optimization shown in Fig. 14 for two finer discretizations and report on the computation times in Table 2. We would like to emphasize that our implementation is prototypical and hence not performance optimized. Therefore, the reported serial subproblem solution times in Table 2 are rather high and the simulation times are significantly smaller. However, they reflect the linear scaling of the subproblem solution well, which is \(f_\text {sub} \approx 8\) when octuplicating the reference resolution of \(15 \times 10 \times 2\). The subproblem solver can be parallelized in the design elements and does not require any respective communication which shows the potential for the scalability of our approach for high-dimensional optimization problems.We present the optimized design with resolution \(30 \times 20 \times 4\) in Fig. 18 and only visualize the first two layers in the z-direction.

Table 2 Serial computation times for different discretization levels: the number of outer iterations \(n_\text {iter}\), average time for a subproblem solution \({\bar{t}}_\text {sub}\), and average time for a simulation \({\bar{t}}_\text {sim}\)
Fig. 18
figure 18

Optimized designs for \(\Lambda _\Psi = -10\), see setting in Fig. 14, with a higher resolution of \(30 \times 20 \times 4\) design elements

4.2 Optimization with two unit cell types

To study the ability of SGP to handle more than one unit cell type, we add unit cell type 2 that is comprised of a void sphere surrounded by matrix material (see second row of Fig. 4). In this case, the only design parameter is the radius \({r_s \in [0.1,0.4]}\) of the void sphere, whereby the smaller the void sphere, the higher the volume fraction of the matrix phase and therefore the stiffer the cell. Thus, cells of type 2 are particularly favourable for the mechanical part of the objective. When only optimizing the compliance, we obtain the trivial solution shown in Fig. 19.

Fig. 19
figure 19

Compliance-minimized designs: a only allowing cells of type 1 and b allowing choices of type 1 and 2. The red dots visualize the void inclusions of cells of type 2. The optimized compliance of design b is 24% better than the compliance of the optimized design a. (Color figure online)

For the fluid flow, the use of cells of type 2 is futile as they are not permeable. However, for numerical reasons, we set the permeability of the latter cells to 0.001. Cells of type 1 have orthotropic mechanical properties and transversal isotropic permeability tensors, whereas cells of type 2 have isotropic mechanical properties and no permeability. Although cell types 1 and 2 are disjunct in their parameter spaces, the corresponding ranges of volume fractions of the stiff matrix material overlap. We have \(\rho _h\left( \mathcal {H}_1([0.08,0.08])\right) = 87.9\%,\ \rho _h\left( \mathcal {H}_1([0.22,0.22])\right) = 71.54\%\) and \(\rho _h\left( \mathcal {H}_2(0.4)\right) =73.19\%,\ \rho _h\left( \mathcal {H}_2(0.1)\right) = 99.6\%\). \(A^{\text {nodes}}_2\), the basis for the interpolation of \(\mathcal {H}_2\), consisted of 30 uniformly distributed samples for \(r_s \in [0.1,0.4]\) and the optimization procedure was performed on \(A_2^\text {grid}\) with 60 samples that again were uniformly distributed.

Next, we present the updated Pareto front for compliance minimization and fluid flux maximization with both unit cell types in Fig. 20.

Fig. 20
figure 20

Comparison of the Pareto curves for varying \(\Lambda _\Psi\). Blue: optimization with cells of type 1 and 2. Red: optimization with cells of type 1 only. The blue curve clearly dominates the red curve. (Color figure online)

It is important to note that although we did not use enhanced initial designs for the computation of the points on the Pareto curve, the comparison between the new (blue) curve and the old (red) curve shows that consistently better designs are obtained and the points on the blue curve strictly dominate the points on the red curve in the Pareto sense. This is not surprising as, with the addition of a new unit cell type, the design freedom is increased. However, the fact that we do not observe any outliers in this respect again underlines the stability of our SGP method. The numbers of required outer iterations varied between 4 and 40, which means that no significant increase in the number of iterations is observed, although a second cell type has been added. Fig. 21 shows how the number of cells of type 2 in the optimized design decreases with decreasing \(\Lambda _\Psi\). This is expected, as cell type 2 is unusable for a flux-favoured design.

Fig. 21
figure 21

Results of bicriterial optimization with cells from both type 1 and 2 for varying \(\Lambda _\Psi\). The designs visualized here correspond to the labelled data points of the Pareto curve in Fig. 20

All results presented so far were computed without employing a resource constraint and hence to demonstrate that SGP can also easily handle problems in which a resource constraint is added, we briefly present a selected result in Fig. 22.

Fig. 22
figure 22

Result of pure compliance minimization when allowing unit cells of type 1 and 2 with an active volume fraction constraint setting \({\bar{\rho }}_m= 0.8\) on the stiff material phase. In comparison with Fig. 21a, it is evident that only now cells of type 1 also appear in the design. Moreover, the resource constraint leads to a variation of the parameter \(r_s\) for cell type 2

4.3 Optimization with both cell types and regularization of design labels and interfaces

We introduce a regularization of the optimization problem by applying a weighted sum filter \(\mathbb {F}\) (e.g.  Bruns and Tortorelli (2001); Bourdin (2001)), which is often used in the context of topology optimization, on regularization labels that are directly related to the unit cells’ geometric parameters. For this, we introduce the following mappings

$$\begin{aligned} l_1: {\left\{ \begin{array}{ll} A_1 &{}\rightarrow \mathbb {R}^3 \\ (r_x,r_y,\varphi ) &{}\mapsto R_1 \end{array}\right. } \end{aligned}$$
(53)

where

$$\begin{aligned} R_1&= \left( \frac{r_x-0.08}{0.14}, \frac{r_y-0.08}{0.14}, \cos \left( 2\frac{\varphi }{\pi } -\frac{\pi }{2}\right) \right) ^\top , \end{aligned}$$

and

$$\begin{aligned} l_2: {\left\{ \begin{array}{ll} A_2 &{}\rightarrow \mathbb {R}^3 \\ r_s &{}\mapsto R_2 = (-1,-1,-1)^\top . \end{array}\right. } \end{aligned}$$
(54)

This choice of labelling has several effects. Within type 1, the maximal distance from the lower to upper label bound is 1, which is the same distance required to jump from the stiffest cell of type 1, with \(r_x=r_y=0.08\), to any cell of type 2. Therefore, the interface between cells of type 1 and 2 is also penalized. The most expensive change is a jump from type 1, which is preferred by the compliance, to any cell of type 2, which is most beneficial for the fluid flux. The shifted cosine function appearing in the expression for \((R_1)_3\) is employed to circumvent disambiguities for the angular variable.

Employing these regularization labels, \(\mathcal {J}_\text {reg}\) from Eq. 49 changes to

$$\begin{aligned} \mathcal {J}_\text {reg}({{\varvec{R}}}) = \frac{1}{2} \sum _{\ell =1}^3 \Vert {{\varvec{R}}}_\ell - \mathbb {F}({{\varvec{R}}}_\ell ) \Vert ^2, \end{aligned}$$
(55)

where \({{\varvec{R}}}_\ell \in \mathbb {R}^{{n_\text {el}}}\) collects the \(\ell\)-the components of the regularization label assigned to each finite element, which is defined by formula Eq. 53 or Eq. 54 if cell type 1 or cell type 2 is chosen for the corresponding finite element \(e\), respectively.

Next, we study the influence of regularization with the optimized result for the particular choice \(\Lambda _\Psi = -3\). The result displayed in Fig. 23 shows the changes in design with the increasing regularization parameter \(p_\text {filt}\).

Fig. 23
figure 23

Results for varying \(\Lambda _\Xi\) with a filter radius of 1.3 elements and \(\Lambda _\Psi = -3\)

The respective objective values are listed in Table 3. The regularization of fluid channel radii can clearly be observed when comparing the designs in the right lower corner of Fig. 23b and c. With increasing \(p_\text {filt}\), the interface between unit cell types 1 and 2 at the right upper corner of the design domain vanishes and the design is dominated by cells of type 1.

Table 3 Performance of the designs shown in Fig. 23 with \(\mathcal {J}_\text {mer,opt}(\Lambda _\Xi ) = \mathcal {J}_\text {reg,opt}(\Lambda _\Xi ) + \Phi _{h,\text {opt}} + \Lambda _\Psi \Psi _{h,\text {opt}}\)

5 Conclusion and outlook

We presented an SGP approach to homogenization-based structural optimization which can be viewed as a free material optimization constrained by the set of admissible geometric material parameters.

By means of numerical examples, in which we successively added more components to the optimization problem, we demonstrated that the proposed SGP approach with its first-order approximations provides good and reasonable optimized designs without the necessity for a particular design initialization or the employment of a regularization strategy for purposes of convergence. Furthermore, SGP is able to handle several material classes with disjunct parameter sets without additional interpolation and penalization strategies. We further observed that optimizing the local orientation of the microstructure yields a significant improvement, up to 48%, of the fluid flux. While we have not actively addressed the subject of connectivity within the microstructure, namely to ensure the connectivity of the fluid-saturated channels, the regularization approach presented in Sect. 4.3 can be used to control the degree of variation of the local microstructure rotation. Furthermore, through the presented numerical examples, we showed that only a mild regularization already has a fair impact on the design.

Although the resolution of the finite element approximation - and hence the number of design elements - of the examples in Sect. 4 was chosen rather coarsely, it served the purpose of demonstrating the presented features of SGP. Concerning finer resolutions, it should be noted that the algorithm can be well parallelized with respect to the design elements due to the block separability of the first-order approximations.

The brute-force approach in the subproblem solver, described in Algorithm 2, can be further accelerated by employing a hierarchical scanning of the design grids \(A^\text {grid}_i\) in which one starts with a rather coarse number of samples and determines the minimizer among those. In the next level, only the current minimizer and its neighbours are considered and the same search within this subset of \(A^\text {grid}_i\) is performed for all \(i \in I\). This step is repeated until the maximum desired number of levels or some accuracy is achieved. With this strategy, the quality of the design depends on the number of samples on the coarsest grid level and an alternative would be to apply a Lipschitz optimization solver, see Hansen and Jaumard (1995), to each design element and type in a black-box manner.

Further research will focus on extending the SGP approach for homogenization-based optimization to transient problems and, in particular, to dynamic metamaterial design. Another challenge is to extend the proposed optimization approach for an approximate treatment of nonlinear two-scale problems with the homogenized coefficients depending on the macroscopic response by virtue of the sensitivity analysis as discussed in Rohan and Lukeš (2015).