1 Introduction

Topology optimization is a versatile design technique for identification of optimized structural configurations (members’ connectivity, existence and sizes) via a systematic search of the design space while the design constraints are satisfied (Bendsoe and Sigmund 2004). A large body of research and development in structural topology optimization has been devoted to design under deterministic conditions, where both the external or operating conditions (e.g. applied loads) and structural characteristics (e.g., material properties, geometry) are assumed to be known with full certainty (Suzuki and Kikuchi 1991; Sigmund and Jensen 2003; Allaire et al. 2004; Deaton and Grandhi 2014). However, this assumption is often challenged in real-world engineering design applications where multiple sources of uncertainty exist (e.g., uncertain load magnitudes and directions and structural member properties). These “input uncertainties” lead to variability in the structural response, which may be exacerbated for deterministic designs that are optimized overlooking these effects. In trying to address this, a recent trend in topology optimization has focused on formal incorporation of these uncertainties within the design process. While methodologies to manage the uncertainties in loading (especially for static loads) is rapidly being developed (see e.g., Ben-Tal and Nemirovski 1997; Lógó 2007, 2009; Csébfalvi 2014 and references therein), the incorporation of uncertainties in structural characteristic has received relatively low attention. This is primarily because, incorporation of these uncertainties leads to uncertain stiffness matrices, which from a computational point-of-view, significantly complicates efficient characterization of structural response variability within the optimization process. When the designer’s knowledge about the uncertainty is limited, non-probabilistic methods such as worst-case design (WCD) and fuzzy design (see Lombardi and Haftka 1998; Luo et al 2006; Allaire and Dapogny 2014) offer a powerful platform to reduce this complexity; see also Moens and Vandepitte (2005) for a survey, and Guo et al. (2009, 2011) and Venini and Pingaro (2017) for recent developments that propose or use rigorous “confidence” formulations for WCD. These methods, however, may make too conservative assumptions that undermine the final design performance (Martínez-Frutos et al. 2016). Probabilistic topology optimization methods are, therefore, being developed which model the sources of uncertainty (more realistically) with random variables (or random fields) and directly include the statistical properties of these random variables in the design process. As a result, the structural response becomes random and a probabilistic uncertainty quantification (UQ) methodology is required to determine some statistics at the response level (e.g, mean and standard deviation of the response); see e.g. Asadpoure et al. (2011), Tootkaboni et al. (2012), Gu et al. (2013), Dunning and Kim (2013), Medina and Taflanidis (2015), Jalalpour and Tootkaboni (2016).

From the two formal design methodologies to manage the variability in response in topology optimization, reliability-based topology optimization (RBTO) and robust topology optimization (RTO), in this work we focus on the latter, which aims to produce designs that are relatively less sensitive to uncertainties, while limiting the treatment to the case where the stiffness matrix becomes stochastic as a result of randomness in structural characteristics. In what follows, we review some of the recent developments in this area and refer the reader to the references therein.

One of the first attempts in RTO under structural characteristics uncertainties was by Sandgren and Cameron (2002) where they used Monte Carlo simulation for uncertainty quantification in topology optimization of trusses under geometric and material property uncertainties. Sigmund (2009) proposed a (non-probabilistic) RTO algorithm for uniformly under or over-etched manufactured products and Jang et al. (2012) attempted topology optimization under boundary uncertainty by modeling boundary perturbations via bounded-but-unknown (BBU) variables which was shown to produce designs that control the effects of these uncertainties. The methodology proposed by Sigmund (2009) was extended to account for spatially varying manufacturing errors using Monte Carlo as the UQ engine (Schevenels et al. 2011) and using re-analysis to achieve computational efficiency (Amir et al. 2012). However, Monte Carlo-based UQ within topology optimization, which itself is an iterative search process, becomes computationally demanding. To address this challenge alternative methodologies that aim to reduce the computational burden associated with repeated UQ are being developed recently. One of the first attempts in this direction, following the work of Guest and Igusa (2008), was by Asadpoure et al. (2011) where topology optimization was formally combined with stochastic perturbation to perform design optimization under uncertainty. Lazarov et al. (2012) later used this framework for topology optimization under over- and under-etching manufacturing errors and Jansen et al. (2015) used it for RTO of continua under geometric imperfections which also included the nonlinear effects of these imperfections on the structural response. Jalalpour et al. (2011) was the first to extend this framework for truss design under nodal uncertainty while accounting for global structure instabilities, and later for RBTO of continua under uncertainty (Jalalpour and Tootkaboni 2016), stress-based frame design under geometric uncertainties (Changizi et al. 2017b) and compliance-based RTO under geometric and material property variability (Changizi and Jalalpour 2017a). Attempts to integrate recent advances in stochastic computations with topology optimization appeared only a few years ago with the work of Chen et al. (2010) where a non-intrusive approach was used and Tootkaboni et al. (2012) where a fully intrusive formulation based on Polynomial Chaos expansion was developed for topology optimization under uncertainty. Stochastic expansions were later used for topology optimization under uncertainty in material placement using spatially correlated random fields and numerical quadrature (Jansen et al. 2013), RTO of trusses (Richardson et al. 2015) (with a genetic algorithm as optimizer), RTO of continua under material properties and loading uncertainties using stochastic collocation (Martínez-Frutos et al. 2016) and most recently in Keshavarzzadeh et al. (2017) for RTO and RBTO of structures under loading and geometric uncertainties.

A quick look at the literature surveyed above, particularly those related to discrete topology optimization under uncertainty in structural characteristics, reveals that recent attempts have mainly focused on topology optimization considering geometric imperfections in the form of structural node location variabilities or material property uncertainties modeled via spatially varying random fields. In this work, we draw upon our recent efforts on integration of topology optimization and stochastic perturbation and develop a robust topology optimization framework that allows for incorporating stochastic structural member imperfections in the topological design process. The member imperfections, sometimes referred to as “camber” in the literature, could be a result of manufacturing, storage and transportation of (steel) structural members. Our approach to model such imperfections rests on a general and parameterized member geometry definition and its associated stiffness matrix and does not follow the usual path of member subdivision and nodal coordinate perturbations, thereby reducing the dimensionality of the topology optimization problem in the stochastic space. As such, while the focus of this work is on discrete structures, we note that the proposed framework has the potential to be integrated with continuum topology optimization techniques that make use of explicit representation of geometry in the design process (see Guo et al. 2014; Zhang et al. 2016). Uncertainty quantification is efficiently performed using a second-order stochastic perturbation method where the derivatives of element stiffness matrices with respect to random variables parameterizing the crookedness of the structural members are obtained and assembled to form the “global” derivative matrices comprising the series representation of imperfect structure’s stiffness matrix. The expected value of performance measure is used as the measure to manage uncertainty in the design process and design sensitivities are analytically derived (using the sensitivity of stiffness matrices and their first and second order derivatives with respect to design variables) and fed into a gradient-based optimizer to achieve higher computational efficiency. Three numerical examples under different magnitudes of uncertainty are investigated to show the impacts of structural member imperfection uncertainty on the optimized topologies.

2 Deterministic topology optimization

Without loss of generality, we begin with the well-known minimum compliance design under a limited volume of material for skeletal structures under deterministic conditions which can be stated as follows:

$$ \begin{array}{ll}\min\limits_{\mathbf{t}} C &= \mathbf{f}^{T} \mathbf{d}_{0}({\mathbf{t}}) \\ s.t. \quad & \mathbf{K}_{0}({\mathbf{t}})\mathbf{d}_{0}({\mathbf{t}}) = \mathbf{f}\\ & {\sum\limits_{e}^{N}}{t^{e} l^{e}} \leq V\\ & t_{min}\leq t^{e} \leq t_{max} \;\;\; \end{array} $$
(1)

Here boldface lower and upper case letters denote vectors and matrices respectively. The objective function is the compliance C, which is an inverse measure of structural stiffness under the applied load vector \(\mathbf {f}\). Member cross-sections are assumed rectangles with a unit thickness perpendicular to the structure’s plane. The design variables are the cross-sectional height (or area) of these members in the plane of the structure collected in vector \(\mathbf {t}\). In the above formulation, \(\mathbf {K}_{0}({\mathbf {t}})\) and \(\mathbf {d}_{0}({\mathbf {t}})\) are the global stiffness matrix and the displacement vector. The subscript 0 is used to show that these quantities are deterministic. Moreover, N is the number of elements, \(t^{e}\) and \(l^{e}\) denote element’s area and length, and the total volume of available material is denoted by V. Finally, \(t_{min}\) is a lower bound for cross-sectional areas to avoid singularity of stiffness matrix and \(t_{max}\) denotes the maximum allowable area.

To achieve computational efficiency in topology optimization problems with many design variables the method of choice is often gradient-based optimization; see Sigmund (2011) for a discussion. This, however, requires the visibility of first order sensitivities. We use the adjoint method for sensitivity analysis. This method begins with adding a constant multiple of the equilibrium constraint (or any other equality constraint) to the objective function as follows:

$$ \Hat{C}=\mathbf{f}^{T}\mathbf{d}_{0}(\mathbf{t})+\boldsymbol{\mu}^{T}(\mathbf{f}-\mathbf{K}_{0}). $$
(2)

Differentiating (2) with respect to a design variable \(t^{e}\) using the chain rule results in:

$$ \frac{\partial C}{\partial t^{e}}=\frac{\partial\Hat{C}}{\partial t^{e}}=(\mathbf{f}-\mathbf{K}_{0}\boldsymbol{\mu})^{T} \frac{\partial \mathbf{d}_{0}}{\partial t^{e}}-\boldsymbol{\mu}^{T}\frac{\partial\mathbf{K}_{0}}{\partial t^{e}}\mathbf{d}_{0} \;\;\; \forall \boldsymbol{\mu}\in \mathbb{R}^{N_{d}}, $$
(3)

with \(N_{d}\) the number of degrees of freedom, and where \(\boldsymbol {\mu } = \mathbf {d}_{0}\) is set to remove the first component, which then leads to the following simplification:

$$ \frac{\partial\Hat{C}}{\partial t^{e}}=-\mathbf{d}_{0}^{T}\frac{\partial\mathbf{K}_{0}}{\partial t^{e}}\mathbf{d}_{0}. $$
(4)

Finally, because the structure stiffness matrix is an assembly of element-level stiffness matrices, \(\mathbf {K^{e}}\), the above is simplified to:

$$ \frac{\partial\Hat{C}}{\partial t^{e}}=-\mathbf{d^{e}}^{T}\frac{\partial\mathbf{K^{e}}}{\partial t^{e}}\mathbf{d^{e}}, $$
(5)

where \(\mathbf {d}^{e}\) is the displacement vector corresponding to the element e. In the section that follows we present the elements of a framework for topology optimization of skeletal structures with imperfect members. While the framework presented below is generalizable to cases where the formation of objective and constraint involves more complex mechanics (e.g. topology optimization under uncertainty and with stability or stress considerations; see Jalalpour et al. 2011 and Changizi et al. 2017b) we limit the derivations here to within minimizing the compliance (or maximizing the stiffness) under volume or weight constraint or minimizing volume or weight under compliance (or stiffness) constraint.

3 Topology optimization of skeletal structures with imperfect members

In this section, we develop a framework for topology optimization of skeletal structures under uncertainties in structural members’ out-of-straightness. We model such uncertainties by assuming stochastically “crooked” frame elements in which the crookedness is defined as the amount of out-of-straightness along the longitudinal axis and represented through a given functional form parameterized by random variables and not through subdivision and nodal coordinate perturbations. We begin by deriving the stiffness matrix of the crooked element. That is followed by an overview of stochastic perturbation, and a formal statement and analysis of topology optimization under uncertainty in element-level out-of-straightness that consists in detailed derivations of the derivatives of stiffness matrices with respect to uncertain variables (for the sake of forming the series representation of stiffness matrix for the “imperfect” structure) and their sensitivities with respect to design variables to feed the gradient-based optimizer.

3.1 Stiffness matrix of a crooked frame element

Consider an imperfect beam element with an out-of straightness represented by an arbitrary function \(y=f(x)\) in the co-ordinate system shown in Fig. 1. The beam has six degrees of freedom but is clamped on the right side. The bending moment M, and axial and shear forces \(P, V\) are also shown on the same figure and \(\delta _{x}\), \(\delta _{y}\) and \(\theta _{z}\) denote the displacements in x and y direction and the rotation of the free end.

Fig. 1
figure 1

A curved cantilever beam

Assuming the shear deformation is negligible (i.e. Euler-Bernoulli formulation), the elastic strain energy of the beam can be written as:

$$ U=\int\limits_{0}^{S_{0}}\frac{1}{2EI}\left( -Vx+Py+M\right)^{2}dS+ \int\limits_{0}^{S_{0}}\frac{1}{2EA}\left( V \sin \phi +P \cos \phi \right)^{2}dS $$
(6)

with S denoting the coordinate along the curve, \(\phi =\phi (S)\) the angle between the member and the horizontal axes and:

$$ dS=\sqrt{1+\left( \frac{dy}{dx}\right)^{2}}\;\;\;\text{and}\;\;\;S_{0}={\int\limits_{0}^{l}} dS={\int\limits_{0}^{l}} \sqrt{1+\left( \frac{dy}{dx}\right)^{2}}dx, $$
(7)

where l is the length of the straight line joining the end points of the beam member, E is the Young’s modulus, and A and I are the cross-sectional area and moment of inertia respectively. Expanding the terms inside the parentheses in (6), and substituting for \(dS\) we get:

$$\begin{array}{@{}rcl@{}} U=&\frac{1}{2EI}\left[V^{2}I_{1}-P^{2}I_{2}-M^{2}I_{3}-\right.\\ &&{\kern-9.1pc}\left.2VPI_{4}-2VMI_{5}+ 2PMI_{6}\right]+\\ &\frac{1}{2EA}\left[V^{2}I_{7}+P^{2}I_{8}+ 2VPI_{9}\right] \end{array} $$
(8)

with constants \(I_{1}\) to \(I_{9}\) defined below, and where primes denote derivative with respect to x.

$$ \begin{array}{ll}& I_{1}={\int\limits_{0}^{l}}x^{2}\sqrt{1+y'^{2}}dx\;\;\;, \;\;\; I_{2}={\int\limits_{0}^{l}}y^{2}\sqrt{1+y'^{2}}dx \\ & I_{3}={\int\limits_{0}^{l}}\sqrt{1+y'^{2}}dx\;\;\;, \;\;\; I_{4}={\int\limits_{0}^{l}}xy\sqrt{1+y'^{2}}dx\\ & I_{5}={\int\limits_{0}^{l}}x\sqrt{1+y'^{2}}dx\;\;\;, \;\;\; I_{6}={\int\limits_{0}^{l}}y\sqrt{1+y'^{2}}dx\\ & I_{7}={\int\limits_{0}^{l}}\frac{y'^{2}}{\sqrt{1+y'^{2}}}dx\;\;\;, \;\;\; I_{8}={\int\limits_{0}^{l}}\frac{1}{\sqrt{1+y'^{2}}}dx\\ & I_{9}={\int\limits_{0}^{l}}\frac{y'}{\sqrt{1+y'^{2}}}dx \end{array} $$
(9)

Now, using Castigliano’s theorem, the displacements and rotation of the free end of the beam can be obtained as follows:

$$\begin{array}{@{}rcl@{}} {\delta_{x}^{1}}&=&\frac{1}{EI}\left[-VI_{4}+PI_{2}+MI_{6}\right]+\frac{1}{EA}\left[VI_{9}+PI_{8}\right] \end{array} $$
(10)
$$\begin{array}{@{}rcl@{}} {\delta_{y}^{1}}&=&\frac{1}{EI}\left[VI_{1}-PI_{4}-MI_{5}\right]+\frac{1}{2EA}\left[VI_{7}+PI_{9}\right] \end{array} $$
(11)
$$\begin{array}{@{}rcl@{}} {\theta_{z}^{1}}&=&\frac{1}{EI}\left[-VI_{5}+PI_{6}+MI_{3}\right] \end{array} $$
(12)

which in matrix form reads as:

$$ \left[\begin{array}{c} {\delta_{x}^{1}} \\[.3cm] {\delta_{y}^{1}} \\[.3cm] {\theta_{z}^{1}} \end{array}\right]=\frac{1}{EI} \left[\begin{array}{ccc} I_{2}+\frac{I}{A}I_{8} &\;\;\; -I_{4}+\frac{I}{A}I_{9} &\;\;\; I_{6}\\[.3cm] -I_{4}+\frac{I}{A}I_{9} &\;\;\; I_{1}+\frac{I}{A}I_{7} &\;\;\; -I_{5}\\[.3cm] I_{6} &\;\;\; -I_{5} &\;\;\; I_{3} \end{array}\right] \left[\begin{array}{l} P\\[.3cm]V\\[.3cm]M \end{array}\right] $$
(13)

Inverting the matrix obtained in (13) we obtain the top left block of the \(6\times 6\) stiffness matrix for a crooked beam element as:

$$ \mathbf{K}^{e}_{11}=\frac{1}{k_{7}}\left[\begin{array}{lll} k_{1} &\;\;\; k_{2} &\;\;\; k_{3}\\[.3cm]k_{2} &\;\;\; k_{4} &\;\;\; k_{5}\\[.3cm]k_{3} &\;\;\; k_{5} &\;\;\; k_{6} \end{array}\right] $$
(14)

with \(\{k_{i}\}_{i = 1}^{7}\) defined below:

$$ \begin{array}{llc}k_{1}\,=\,& EAI(A({I_{5}^{2}} - I_{1}I_{3}) - II_{3}I_{7}) \\ k_{2}\,=\,& EAI(A(I_{5}I_{6} - I_{3}I_{4}) + II_{3}I_{9})\\ k_{3}\,=\,& EAI(A(I_{1}I_{6} - I_{4}I_{5}) + I(I_{6}I_{7} + I_{5}I_{9}))\\ k_{4}\,=\,& EAI(A({I_{6}^{2}} - I_{2}I_{3}) - II_{3}I_{8})\\ k_{5}\,=\,& EAI(A(I_{4}I_{6} - I_{2}I_{5}) + I(-I_{5}I_{8} - I_{6}I_{9}))\\ k_{6}\,=\,& EI(A^{2}(-I_{1}I_{2} + {I_{4}^{2}}) + I^{2}({I_{9}^{2}} - I_{7}I_{8})+AI(-I_{1}I_{8} \,-\, I_{2}I_{7} \,-\, 2I_{4}I_{9}))\\ k_{7}\,=\,& A^{2}(I_{1}{I_{6}^{2}} + I_{2}{I_{5}^{2}} +I_{3}{I_{4}^{2}}- I_{1}I_{2}I_{3} - 2I_{4}I_{5}I_{6}) + I^{2}(I_{3}{I_{9}^{2}}- I_{3}I_{7}I_{8})\\ &+ AI({I_{5}^{2}}I_{8} + {I_{6}^{2}}I_{7}-I_{1}I_{3}I_{8} - I_{2}I_{3}I_{7} - 2I_{3}I_{4}I_{9} + 2I_{5}I_{6}I_{9}) \end{array} $$
(15)

It can be easily shown, using the the definition of \(ij^{th}\) entry in element’s stiffness matrix, that the full \(6\times 6\) stiffness matrix of the imperfect element will be of the following form

$$ \mathbf{K}^{e}=\left[\begin{array}{ll}\mathbf{K}^{e}_{11} &\;\;\; \mathbf{K}^{e}_{12}\\[.3cm]\mathbf{K}^{e}_{21} &\;\;\; \mathbf{K}^{e}_{22} \end{array}\right] $$
(16)

with \(\mathbf {K}^{e}_{11}\), \(\mathbf {K}^{e}_{12}=\mathbf {K}^{e}_{21}\), and \(\mathbf {K}^{e}_{22}\) (re)defined below:

$$ \begin{array}{ll}\mathbf{K}^{e}_{11}&=\frac{1}{k_{7}}\left[\begin{array}{ccc} k_{1} &\;\;\; 0 &\;\;\; k_{3}\\[.3cm]0 &\;\;\; k_{4} &\;\;\; k_{4}l/2\\[.3cm]k_{3} &\;\;\; k_{4}l/2 &\;\;\; k_{6} \end{array}\right]\\ \mathbf{K}^{e}_{12}&=\frac{1}{k_{7}}\left[\begin{array}{ccc} -k_{1} &\;\;\; 0 &\;\;\; -k_{3}\\[.3cm]0 &\;\;\; -k_{4} &\;\;\; k_{4}l/2\\[.3cm]-k_{3} &\;\;\; -k_{4}l/2 &\;\;\; -k_{6}+k_{4}l^{2}/2 \end{array}\right]\\ \mathbf{K}^{e}_{22}&=\frac{1}{k_{7}}\left[\begin{array}{ccc} k_{1} &\;\;\; 0 &\;\;\; k_{3}\\[.3cm]0 &\;\;\; k_{4} &\;\;\; -k_{4}l/2\\[.3cm]k_{3} &\;\;\; -k_{4}l/2 &\;\;\; k_{6} \end{array}\right] \end{array} $$

where we have assumed the functional form used to model member imperfection is symmetric, that is \(k_{2}= 0\) and \(k_{5}=\frac {1}{2}k_{4}l\).

Numerical verification of imperfect element stiffness matrix

The derivations above are verified with analyzing two simple structures composed of curved structural members. These structures are analyzed via both the imperfect element stiffness matrix provided in Section 3.1 and FE analysis where many straight beam elements are used to model the curved structural members. The first structure is the cantilever beam shown in Fig. 1, for which the following numerical values are assumed: \(y=\sin (\pi x/l)\), with \(l = 2\) the length of the beam, \(P = 1\), \(V = 0\), \(M = 0\) and \(E = 29500\). The cross-section of the beam is a circle with radius equal to 0.1. All values are expressed in a consistent system of units. The nodal displacements and rotations at the free end of the curved cantilever beam are shown in Table 1 where an excellent agreement is observed between the curved element formulation and many-element FE analysis. The second structure is a portal frame shown in Fig. 2. The frame members are all \(60^{\circ }\) arcs from a circle with radius \(R = 1\) and the cross-sectional and material properties are identical to the previous example. The results from both methodologies are also presented in Table 1 where excellent agreement is observed.

Fig. 2
figure 2

A portal frame with curved elements

Table 1 Validation of Imperfect Stiffness Matrix formulation (Imp. Stiff. Mat.) results against FE analysis results obtained using many straight frame elements to model the curved members

3.2 Representation and propagation of uncertainty in elements’ out-of-straightness

Having the stiffness matrix of a crooked beam element at our disposal, we now turn our attention to representation and propagation of uncertainties in structural elements’ out-of-straightness. Although the development in the preceding section is general and provides a flexible platform for parametrization of uncertainty in element-level imperfections, we assume that members’ out-of-straightness is expressed with a half sine wave as follows:

$$ y=a\;sin\left( \frac{\pi x}{l}\right), $$
(17)

where l is the (projected) element length. The random variable a models the uncertain magnitude of the imperfection in the midpoint of the element. Therefore, the stiffness matrix for each element (and the overall structure) becomes stochastic. Assuming a quasi-static loading and linear elastic behavior, the equilibrium equation takes the following stochastic form:

$$ \mathbf{K}(\mathbf{t},\mathbf{a})\mathbf{d}(\mathbf{t},\mathbf{a})= \mathbf{f} $$
(18)

where we have collected all uncertain magnitudes of out-of-straightness in a vector \(\mathbf {a}\) and \(\mathbf {t}\) represents the vector of design variables (cross-sectional heights) as before. It is observed that the displacement vector is dependent on \(\mathbf {a}\). As a result, the objective function (compliance C) becomes a random variable and a computational framework is required to quantify the effect of input uncertainties on the structural response.

It was mentioned that while Monte Carlo simulation offers a flexible approach for uncertainty quantification (UQ), it becomes computationally expensive for topology optimization that requires a large number of optimization iterations to search the design space. To address this challenge, in this work, we use stochastic perturbation to estimate the statistics of the compliance more efficiently. Perturbation methods have a long history for UQ in structural mechanics. The first applications, focused on first order approximations, can be found in the works of Collins and Thomson (1969), Shinozuka and Astill (1972), Cambou (1975). Hisada and Nakagiri (1981) developed a second-order perturbation analysis framework with improved accuracy that could be used for structural reliability analysis. Further developments and applications were proposed in Liu et al. (1986), Kleiber and Hien (1992). Here, we follow the most common perturbation method, which aims to replace the nonlinear functions of input uncertainties by their Taylor series expansions (to the second-order). This greatly facilitates UQ as was recently demonstrated in the context of topology optimization by Guest and Igusa (2008) and Asadpoure et al. (2011). Let us assume, without loss of generality, that the input random vector is composed of a (mean) deterministic vector \(\mathbf {a}_{0}\) and a zero mean random fluctuation vector \({\Delta }\mathbf {a}\) as follows:

$$ \mathbf{a}= \mathbf{a}_{0} + {\Delta}\mathbf{a} $$
(19)

Perturbation methods replace functions of uncertain parameters by their Taylor series expansions. It is customary to choose the point of expansion to be the mean value of the random vector \(\mathbf {a}\). Proceeding with this choice for representing the global stiffness matrix and displacement vector, and collecting terms with the same order, the stochastic equilibrium equation can be replaced with the following system of equations:

$$\begin{array}{@{}rcl@{}} &&\mathbf{K}_{0}\mathbf{d}_{0} = \mathbf{f} \end{array} $$
(20)
$$\begin{array}{@{}rcl@{}} &&\mathbf{K}_{0}\mathbf{d}_{i} = -\mathbf{K}_{i}\mathbf{d}_{0} \end{array} $$
(21)
$$\begin{array}{@{}rcl@{}} &&\mathbf{K}_{0}\mathbf{d}_{ij} = -\mathbf{K}_{i}\mathbf{d}_{j}-\mathbf{K}_{j}\mathbf{d}_{i}-\mathbf{K}_{ij}\mathbf{d}_{0} \end{array} $$
(22)

where we have dropped the dependence on the vector of design variables for brevity. Here, \(\mathbf {K}_{0}=\mathbf {K}(\mathbf {a}_{0})\), \(\mathbf {d}_{0}=\mathbf {d}(\mathbf {a}_{0})\) and by \(\mathbf {\Lambda }_{i}\) and \(\mathbf {\Lambda }_{ij}\) we mean the following:

$$\begin{array}{@{}rcl@{}} \mathbf{{\Lambda}}_{i}&=&\left.\frac{\partial\mathbf{{\Lambda}}}{\partial a_{i}}\right|_{\mathbf{a}=\mathbf{a}_{0}} \end{array} $$
(23)
$$\begin{array}{@{}rcl@{}} \mathbf{{\Lambda}}_{ij}&=&\left.\frac{\partial^{2} \mathbf{{\Lambda}}}{\partial a_{i}\partial a_{j}}\right|_{\mathbf{a}=\mathbf{a}_{0}} \end{array} $$
(24)

Note that the mean structure does not feature members with out-of-straightness (unless a mean imperfection field is assumed to be present) and to solve the equation set (20)-(22) one has to proceed sequentially (Asadpoure et al. 2011; Jalalpour et al. 2013). We can now compute the statistics of the displacement vector \(\mathbf {d}\) from those of the random fluctuation vector \({\Delta } \mathbf {a}\) as follows:

$$\begin{array}{@{}rcl@{}} E[\mathbf{d}]&=&\mathbf{d}_{0}+\frac{1}{2}\sum\limits_{ij} \mathbf{d}_{ij} \sigma_{ij} \end{array} $$
(25)
$$\begin{array}{@{}rcl@{}} Cov[\mathbf{d}]&=&\sum\limits_{ij} \mathbf{d}_{i} \mathbf{d}^{T}_{j} \sigma_{ij}+\frac{1}{2}\sum\limits_{ijk}\left( \mathbf{d}_{i}\mathbf{d}^{T}_{jk}+ \mathbf{d}_{ij}\mathbf{d}^{T}_{k} \right)\sigma_{ijk}\\ &&+\frac{1}{4} \sum\limits_{ijkl} \mathbf{d}_{ij}\mathbf{d}^{T}_{kl}\left( \sigma_{ijkl}- \sigma_{ij} \sigma_{kl}\right) \end{array} $$
(26)

where \(E[\cdot ]\) means mathematical expectation, \(Cov[\cdot ]\) means covariance and \(\sigma _{ij}=E[{\Delta } a_{i}{\Delta } a_{j}]\); similarly for \(\sigma _{ijk}\) and \(\sigma _{ijkl}\). We can now present analytical expressions for the statistics of compliance to be used as objective function or constraint.

While a measure of variability of compliance around its average can be included in the objective function and/or constraints through using (26), in this work we focus only on expected value of compliance which combining (22) and (25), reads:

$$ E[C]=\mathbf{f}^{T}\mathbf{d}_{0}+\sum\limits_{ij} \sigma_{ij} \mathbf{d}_{i}^{T} \mathbf{K}_{0} \mathbf{d}_{j}- \frac{1}{2}\sum\limits_{ij} \sigma_{ij} \mathbf{d}_{0}^{T}\mathbf{K}_{ij} \mathbf{d}_{0} $$
(27)

where we have further made use of (20) and (21) and symmetry of the stiffness matrix. The equation above relates the expected value of compliance to solutions of the equilibrium equations and second order derivatives of the global stiffness matrix, which can be determined explicitly.

3.3 Problem statement and sensitivity analysis

The topology optimization of skeletal structures under uncertainty can now be written in the form of following optimization problem:

$$ \begin{array}{ll}\min_{\mathbf{t}}\;\; &E[C]= \mathbf{f}^{T}E[\mathbf{d}]\\ s.t.\;\;& \mathbf{K}_{0}\mathbf{d}_{0} = \mathbf{f}\\ \;\;&\mathbf{K}_{0}\mathbf{d}_{i} = -\mathbf{K}_{i}\mathbf{d}_{0}\\ \;\;&\mathbf{K}_{0}\mathbf{d}_{ij} = -\mathbf{K}_{i}\mathbf{d}_{j}-\mathbf{K}_{j}\mathbf{d}_{i}-\mathbf{K}_{ij}\mathbf{d}_{0}\\ \;\;&\sum\limits_{e} t^{e} l^{e}\leq V\\ \;\;&t_{min}\leq t^{e}\leq t_{max} \end{array} $$
(28)

The main differences between the above problem and its deterministic counterpart are 1) the appearance of expected value of compliance as the objective function and 2) the replacement of deterministic equilibrium equation with a set of zeroth-order, first-order and second-order equations for approximating the stochastic equilibrium in (18).

To derive sensitivities of the expected value of compliance, we use the adjoint method and begin by adding constant multiples of (20) and (21) to the objective function. A constant multiple of (22) need not be added since the second order displacement \(\mathbf {d}_{ij}\) does not appear in (27). We note, however, that this equation has already been used to arrive at expected value of compliance. Proceeding with this choice, we write:

$$\begin{array}{@{}rcl@{}} E[C]&=&\mathbf{f}^{T}\mathbf{d}_{0}- \frac{1}{2}\sum\limits_{ij} \sigma_{ij} \mathbf{d}_{0}^{T}\mathbf{K}_{ij} \mathbf{d}_{0}+ \sum\limits_{ij} \sigma_{ij} \mathbf{d}_{i}^{T} \mathbf{K}_{0} \mathbf{d}_{j}\\ &+&\boldsymbol{\mu}_{0}^{T}\left( \mathbf{f}-\mathbf{K}_{0}\mathbf{d}_{0}\right)+\sum\limits_{j} \boldsymbol{\mu}_{j}^{T}\left( \mathbf{K}_{0}\mathbf{d}_{j} +\mathbf{K}_{j}\mathbf{d}_{0}\right) \end{array} $$
(29)

where it is noted that the last two terms are identically zero. Taking the derivative with respect to an element design variable \(t^{e}\) results in the following equation:

where the computationally expensive terms \(\partial \mathbf {d}_{0}/\partial t^{e}\) and \(\partial \mathbf {d}_{i}/\partial t^{e}\) have been eliminated by choosing the arbitrary constant vectors \(\boldsymbol {\mu }_{0}\) and \(\boldsymbol {\mu }_{j}\) as follows:

$$\begin{array}{@{}rcl@{}} \boldsymbol{\mu}_{j}&=&-2 \sum\limits_{i} \sigma_{ij} \mathbf{d}_{i} \end{array} $$
(30)
$$\begin{array}{@{}rcl@{}} \boldsymbol{\mu}_{0}&=& \mathbf{d}_{0}-{\mathbf{d}}_{*} \end{array} $$
(31)

where \({\mathbf {d}}_{*}\) is the solution to the following linear system of equations:

$$ \mathbf{K}_{0}{\mathbf{d}}_{*}= \left( \sum\limits_{ij}\sigma_{ij} \mathbf{K}_{ij}\right)\mathbf{d}_{0}-\sum\limits_{j} \mathbf{K}_{j}\boldsymbol{\mu}_{j} $$
(32)

The partial derivatives of global stiffness matrices in (??) with respect to an element design variable reduce to the derivative of the element stiffness matrix with respect to the associated element design variable. Moreover, all global vectors in (??) reduce to their element-level components as follows:

$$\begin{array}{@{}rcl@{}} \frac{\partial} {\partial t^{e}}(E[C])&\,=\,& \sum\limits_{ij}\sigma_{ij} \left( \mathbf{d}_{i}^{eT}\frac{\partial\mathbf{K}_{0}^{e}}{\partial t^{e}}\mathbf{d}_{j}^{e}\,+\,2\mathbf{d}_{i}^{eT} \frac{\partial\mathbf{K}_{j}^{e}}{\partial t^{e}}\mathbf{d}_{0}^{e}\,+\,\frac{1}{2}\mathbf{d}_{0}^{eT} \frac{\partial\mathbf{K}_{ij}^{e}}{\partial t^{e}}\mathbf{d}_{0}^{e}\right) \\ & \,+\,&\left( \mathbf{d}_{0}^{e} + \boldsymbol{d}_{\dag}^{e} \right)^{T}\frac{\partial\mathbf{K}_{0}^{e}}{\partial t^{e}}\mathbf{d}_{0}^{e} \end{array} $$
(33)

where \(\boldsymbol {d}_{\dag }^{e}\) is the elemental component of \(\boldsymbol {d}_{\dag }\) that solves:

$$ \mathbf{K}_{0}\boldsymbol{d}_{\dag}=- \sum\limits_{ij}\sigma_{ij}\left( 2\mathbf{K}_{i}\mathbf{d}_{j}+\mathbf{K}_{ij}\mathbf{d}_{0}\right)\\ $$
(34)

Examining (22) shows that \(\boldsymbol {d}_{\dag }\) in (34) is identical to the summation of the second-order coefficients in the expansion of the displacement field: \(\boldsymbol {d}_{\dag } ={\sum }_{ij}\sigma _{ij}\mathbf {d}_{ij}\). Although either form can be used, it is much more computationally efficient to solve (34) for \(\boldsymbol {d}_{\dag }\) rather than solving (22) for each \(\mathbf {d}_{ij}\), as is pursued in this work. Moreover, for numerical implementation, we do not form the global matrices \(\mathbf {K}_{i}\) and \(\mathbf {K}_{ij}\) in (34) but rather perform the matrix vector multiplications at the element level and assemble the result. Finally, we note that all the linear systems of equations above have the same left-hand side: the mean global stiffness matrix \(\mathbf {K}_{0}\), which allows reducing the computational cost significantly as compared to a Monte Carlo-based algorithm that needs to solve many independent realizations of the structure with imperfect structural members for uncertainty quantification (see Asadpoure et al. 2011 for a detailed discussion).

Returning to (33), it can be seen that the derivatives of element stiffness matrices with respect to uncertain variables \(a_{i}\) and design variables \(t^{e}\) are needed to form the sensitivity of objective function. From (14), (15) and (16), it is seen that the entries in the stiffness matrix for \(e^{th}\) element are functions of these variables through \(k_{m}(A^{e},I^{e},\{{I_{n}^{e}}\}_{n = 1}^{9})\) for \(m = 1,2,\cdots ,7\). We, therefore, have for \(\mathbf {K}_{i}^{e}\):

$$ \mathbf{K}^{e}_{i} = \frac{\partial\mathbf{K}^{e}}{\partial a_{i}}= \sum\limits_{m = 1}^{7} \frac{\partial\mathbf{K}^{e}}{\partial k_{m}}\sum\limits_{n = 1}^{9} \frac{\partial k_{m}}{\partial {I_{n}^{e}}}\frac{\partial {I_{n}^{e}}}{\partial a_{i}} $$
(35)

where we note the above expression is zero for \(i\ne e\). The derivative of this first-order derivative matrix with respect to design variable \(t^{e}\) reads:

$$\begin{array}{@{}rcl@{}} \frac{\partial\mathbf{K}^{e}_{i}}{\partial t^{e}} &=& \sum\limits_{m = 1}^{7}\sum\limits_{q = 1}^{7} \frac{\partial^{2}\mathbf{K}^{e}}{\partial k_{m} \partial k_{q}} \left( \frac{\partial k_{q}}{\partial A^{e}} \frac{\partial A^{e}}{\partial t^{e}}+\frac{\partial k_{q}}{\partial I^{e}} \frac{\partial I^{e}}{\partial t^{e}} \right) \sum\limits_{n = 1}^{9} {\frac{\partial k_{m}}{\partial {I_{n}^{e}}}\frac{\partial {I_{n}^{e}}}{\partial a_{i}}} \\ &+&\sum\limits_{m = 1}^{7} {\frac{\partial \mathbf{K}^{e}}{\partial k_{m}} \sum\limits_{n = 1}^{q} {\left( \frac{\partial^{2}k_{m}}{\partial {I^{e}_{n}} \partial A^{e}} \frac{\partial A^{e}}{\partial t^{e}} + \frac{\partial^{2} k_{m}}{\partial {I^{e}_{n}} \partial I^{e}} \frac{\partial I^{e}}{\partial t^{e}}\right) \frac{\partial {I^{e}_{n}}}{\partial a_{i}}}} \end{array} $$
(36)

which are again functions of \(k_{m}\), \({I^{e}_{n}}\), etc. The second-order derivatives are derived similarly and are not presented here for brevity. As for the terms in the above expression, we only present a few here that pertain to \(k_{7}\):

$$\begin{array}{@{}rcl@{}} &&\frac{\partial \mathbf{K^{e}}}{\partial k_{7}} = -\frac{1}{k_{7}}\mathbf{K^{e}}\\ &&\frac{\partial k_{7}}{\partial I_{1}} = {A}^{2}\left( {I_{6}^{2}}- I_{2} I_{3}\right)-A I I_{3} I_{8} \\ &&\frac{\partial k_{7}}{\partial A} = 2A \left( I_{1}{I_{6}^{2}} + I_{2}{I_{5}^{2}} +I_{3}{I_{4}^{2}}- I_{1}I_{2}I_{3} - 2I_{4}I_{5}I_{6} \right)\\ && \qquad+I \left( {I_{5}^{2}}I_{8} + {I_{6}^{2}}I_{7}-I_{1}I_{3}I_{8} - I_{2}I_{3}I_{7} - 2I_{3}I_{4}I_{9} + 2I_{5}I_{6}I_{9} \right) \\ &&\frac{\partial k_{7}}{\partial I} = A \left( {I_{5}^{2}}I_{8} + {I_{6}^{2}}I_{7}-I_{1}I_{3}I_{8} - I_{2}I_{3}I_{7} - 2I_{3}I_{4}I_{9} + 2I_{5}I_{6}I_{9} \right) \\ && \qquad+ 2I \left( I_{3}{I_{9}^{2}}- I_{3}I_{7}I_{8} \right) \\ &&\frac{\partial^{2} k_{7}}{\partial I_{1} \partial A} = 2A \left( {I_{6}}^{2} - I_{2} I_{3} \right) - I I_{3} I_{8} \\ &&\frac{\partial^{2} k_{7}}{\partial I_{1} \partial I} = -A I_{3} I_{8} \end{array} $$
(37)

Moreover, as an example, the derivative of \(I_{1}\) with respect to the source of uncertainty is given below:

$$ \frac{\partial {I_{1}^{e}}}{\partial a_{i}} = {{\int}_{0}^{l}} x^{2} \frac{y'} {\sqrt{1+y'^{2}}}{\frac{\partial y'}{\partial a_{i}}}dx $$
(38)

where we note that \({\partial {I_{1}^{e}}}/{\partial a_{i}} = 0\) if \(e\neq i\). Repeating these derivations for other coefficients completes the sensitivity analysis.

4 Numerical examples

In this section, we examine the proposed algorithm for topology optimization of three skeletal structures under uncertainty in out-of-straightness of all members. The magnitude of this uncertainty is expressed with its covariance matrix in the following form:

$$ \sigma_{ij}^{2}= \left\{\begin{array}{ll} 0\hspace{.5cm}&i\neq j\\ (\alpha l_{i})^{2} &else \end{array}\right. $$
(39)

where \(l_{i}\) is the (projected) length of the \(i^{th}\) member and \(\alpha \) is the ratio of maximum imperfection to the elements’ length. It is seen that the standard deviation is expressed as a fraction of members length, and no correlation between members is assumed. We note, however, that the proposed framework is general and can be used for correlated uncertainties as well. As for \(\alpha \) values, a typical value of out-of-straightness is \(l/1000\) with l the length of the member. The values in the numerical examples in this manuscript, therefore, have been chosen to vary in an interval that includes this level of crookedness. The “ground structure” approach to topology optimization is employed, where the initial guess is a dense mesh of candidate elements. All examples begin with a uniform distribution of material in this mesh (equal thicknesses for all members). We also initiate the optimization process with non-uniform (random) initial guesses to better explore the objective landscape. Gradient-based optimization is then performed using MATLAB interior point algorithm (The MathWorks Inc 2017) with \(0.0001\%\) tolerance. After the optimization iterations converge members with cross-sectional areas below a threshold are removed from the topology. The optimization is run again using this new design as the initial guess. This process is continued until no members could be removed from the topology by the optimizer. The convergence was rapid with at most three optimization trials (note this is different from design iterations) needed for the examples in this paper. The results of RTO are compared with the deterministic topology optimization, and changes are discussed. In all topologies, line thicknesses show relative member areas, where all areas are normalized against the maximum area of that specific example.

4.1 A simple frame under compression

The ground structure for the first example is a simply supported frame subjected to a center compressive load at its end as shown in Fig. 3a. The width and height of this structure are L and \(3L/8\), respectively, and the total allowable volume is \(L^{2}/32\). The deterministic design (for \(\alpha = 0\)), which features a straight load path to the middle support is also shown in Fig. 3b.

Fig. 3
figure 3

Simple frame subjected to a central compressive load, a ground structure and b deterministic design

As mentioned previously, the deterministic design is derived assuming all members can be manufactured and transported to the site perfectly straight, an assumption that rarely holds in real-world engineering conditions. Actual members may have uncertain out-of-straightness (the magnitude of this uncertainty depends on, for example, the manufacturing plant and handling conditions of members). As a result, this deterministic design may become very sensitive to perturbations in members’ out-of-straightness and suboptimal under real-world conditions. Here, we invoke our developed robust topology optimization algorithm and redesign the structure under three levels of uncertainty as measured by \(\sigma _{ii}= \alpha l_{i}\). These designs are shown in Fig. 4. Comparing the first design shown in Fig. 4a with the deterministic design, it can be seen that the algorithm has suggested adding two new symmetric load paths strengthened by lateral bracings, which begin from the structure tip (the point with maximum displacement) and end in the outer supports. With the increase in the magnitude of input uncertainty, as can be seen with the second and third designs, these new load paths get reinforced to mitigate the effects of uncertainty. We note that all designs are derived under the same volume constraint as in the deterministic design. Therefore, these new paths are formed via removing material from the primary load path, the middle member, and redistributing it in the form of diagonal members and bracings on the two sides of the main load path.

Fig. 4
figure 4

Topologically optimized robust designs for the simple frame under compression with a0.1%, b 0.3% and c 0.5% variability in members’ out-of-straightness

4.2 A bridge under distributed loads

The next numerical example is focused on design of a bridge under distributed loads as shown in Fig. 5a. The ground structure’s width, height, and total allowable volume are L, \(2L\), and \(\frac {L^{2}}{6}\), respectively. Figure 5b shows the described deterministic design, which has a significant share of volume devoted to the middle of its top and bottom cords. These two cords receive smaller cross-sectional areas as they expand from the center to the supports on either side. The diagonal members between these cords are also used to control the deflection of the bottom cord with a significant impact on structure’s compliance.

Fig. 5
figure 5

The ground structure and the deterministic design for the bridge under distributed loads

The designs under the assumption of member out-of-straightness with three levels of uncertainty are shown in Fig. 6. Interestingly, at \(\alpha = 0.0005\) the algorithm chose to strengthen the primary load path and removed some diagonal members from the center. In contrast, for the higher levels of input uncertainty, the algorithm suggested adding more secondary members to the core of the bridge which is consistent with recent findings that explicitly encourage structural complexity to improve robustness; see e.g. Wu et al. (2018). Finally, it is seen in Fig. 7 that an increase in the magnitude of uncertainty in out-of-straightness is accompanied by an increase in the value of (normalized) objective function; this is true for the previous numerical example with the same objective as well as the next numerical example where the objective of maximizing the stiffness is replaced with minimizing the weight.

Fig. 6
figure 6

Robust minimum expected compliance designs under uncertainty in members’ out-of-straightness with different levels of variability (a) 0.05%, (b) 0.1% and (c) 0.3%

Fig. 7
figure 7

The value of objective in numerical examples normalized with the value of objective function for deterministic design versus the magnitude of uncertainty in out-of-straightness (α); α = 0 corresponds to deterministic design

4.3 A tall structure under a lateral point load

The final topology optimization example is concerned with the design of a tall frame structure shown in Fig. 8a. The width and height of this frame are equal to \(L_{x}=L\), \(L_{y}= 4L\) respectively. However, the optimization is posed as a volume minimization problem under a constraint on expected compliance of the structure given in the form of (40) below.

$$ \begin{array}{ll} \min\limits_{\mathbf{t}}\;\;& V = \sum\limits_{e}^{N_{el}}{t^{e}l^{e}} \\ s.t.\;\;& \mathbf{K}_{0}\mathbf{d}_{0} = \mathbf{f}\\ \;\;&\mathbf{K}_{0}\mathbf{d}_{i} = -\mathbf{K}_{i}\mathbf{d}_{0}\\ \;\;&\mathbf{K}_{0}\mathbf{d}_{ij} = -\mathbf{K}_{i}\mathbf{d}_{j}-\mathbf{K}_{j}\mathbf{d}_{i}-\mathbf{K}_{ij}\mathbf{d}_{0}\\ \;\;& E[C] = \mathbf{f}^{T}E[\mathbf{d}] \leq C^{\ast}\\ \;\;& t_{min}\leq t^{e} \leq t_{max} \end{array} $$
(40)
Fig. 8
figure 8

A tall structure under lateral load, a ground structure, b deterministic design

The compliance capacity is chosen as \(C^{\ast }=FL_{y}/100\). The deterministic design is shown in Fig. 8b. It can be seen that many of the thinner diagonal bracing members are perpendicular to the primary load paths (which are signified with thicker plot pens). This is because these members were designed to take advantage of their bending capacity.

We now assume all members feature uncertain out-of-straightness at three different levels and redesign the frame using the robust topology optimization framework proposed in the work. As in the previous examples, the magnitude of uncertainty is characterized by its standard deviation as a fraction of members’ lengths. The final designs are presented in Fig. 9. The main change in the design in Fig. 9a, as compared to the deterministic design, is a re-configuration of bottom bracing members. The next design shown in Fig. 9b features three significant changes: 1) appearance of new load paths, 2) fortification of the bracing in the core of the structure and 3) change of the bracing system at the bottom core of the structure. Finally, the design under the maximum input uncertainty still fortifies the top and bottom bracing systems, and adds more central bracing members. Aside from the characteristics of the final design for a given magnitude of uncertainty, a close look at the succession of optimum structures as the level of uncertainty in members’ imperfections increases reveals that topological changes come in the form of member thickening and/or redistribution of material often in the form of extra bracing with thinner elements. The choice made by the computational optimizer as to what to do and where to introduce topological changes, however, may not be the optimal one due to non-convexity of the objective and constrains and the possibility of being trapped in local minima.

Fig. 9
figure 9

Robust minimum weight designs under members’ out-of-straightness uncertainty for three different levels of variability a 0.005%, b 0.01% and c 0.05%

5 Conclusions

This article presented a methodology for topology optimization of skeletal structures with imperfect structural members under uncertainty in members’ out-of-straightness. This type of imperfection and uncertainty could be a direct result of manufacturing of (for example) steel beams, which are rarely straight as assumed in conventional design algorithms. The out-of-straightness or crookedness was modeled through a functional form parameterized by random variables and the stiffness matrix of the imperfect frame element with an arbitrary shape was derived using energy method. Uncertainty quantification was efficiently performed using the stochastic perturbation method. Further efficiency was achieved through explicitly deriving the sensitivities of the objective and constraint and using them with a gradient-based optimizer, which was chosen as the interior-point method. Design of three structures were investigated. The resulting designs from the proposed algorithm were compared with the deterministic designs and tangible topological differences in the form of load path diversification, member thickening, and bracing fortification were observed. The designs also changed based on the magnitude of the input uncertainty. Extensions to higher order statistical moments of the performance measure and incorporation of structural stability constraints are the future directions with this research.