Der Artikel präsentiert einen neuartigen Ansatz zur Verbesserung des Moving Morphable Components (MMC) Frameworks durch die Integration extrinsischer geometrischer Beschränkungen, die für die Erstellung eines digitalen Mock-ups von Komponenten oder Produkten in kommerziellen CAD-Systemen entscheidend sind. Die Arbeit konzentriert sich auf die Verfeinerung von Komponenten auf CAD-zentrische Weise, bei der sich die Störungen der Elternkomponenten zu den Kindkomponenten ausbreiten und die Störungen der Kindkomponenten ihre geometrischen Beschränkungen zu den Elternkomponenten respektieren. Diese Methode ermöglicht sowohl Topologie als auch Formoptimierung innerhalb derselben MMC-Umgebung und gewährleistet eine nahtlose Integration mit funktionsbasierten CAD-Modellen. Der Artikel skizziert die Literatur, die dieser Arbeit zugrunde liegt, stellt eine detaillierte Methodik zur Umsetzung geometrischer Beschränkungen vor und veranschaulicht den Ansatz anhand mehrerer Beispiele unterschiedlicher Komplexität. Er diskutiert die Fähigkeiten des Ansatzes, die sich daraus ergebenden Herausforderungen und das Potenzial für zukünftige Arbeit und bietet einen umfassenden Überblick über die Fortschritte im MMC-Rahmen. Die numerischen Beispiele verdeutlichen die Effektivität der Beschränkungen und zeigen, dass eine signifikante Reduzierung der Anzahl von Konstruktionsvariablen mit nur geringem Nachteil für das Optimierungsziel erreicht werden kann, wodurch die Herstellbarkeit und Konstruktionseffizienz verbessert werden.
KI-Generiert
Diese Zusammenfassung des Fachinhalts wurde mit Hilfe von KI generiert.
Abstract
This paper strengthens the link between the Moving Morphable Components (MMC) framework and feature-based CAD modelling. This has been achieved by applying CAD-based geometric constraints that define coincident, tangential, and normal constraints between components in the MMC framework. Perturbations of a parent component are propagated to connected child components and perturbations of a child component must respect the limitations imposed by any applied geometric constraint. Algebraic sensitivities have been calculated and demonstrated for each geometric constraint in the MMC framework using gradient-based optimisation. The results demonstrate the link with CAD-based modelling and highlight significant advantages from a design perspective. For example, it is shown that applying geometric constraints reduced the original eighty design variables required in a cantilever beam optimisation by 52.5% with only a 1.51% reduction in the optimised performance. This example was constructed with sixteen rectangular components.
Hinweise
Responsible editor: Xu Guo.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
1 Introduction
Creating a digital mock-up of a component or product in commercial CAD systems typically involves defining a parametric model, where the shape representation is a function of the specified parameters and constraints. This is commonly realised through the “design by features” approach, where predefined features (e.g. bosses, slots, and holes) are instantiated directly or by combinations of sketches and sweeping or lofting operations (Hoffmann and Joan-Arinyo 2002). Features, therefore, can be thought of as the constituent building blocks of a design. While features are instantiated generically, their precise form and location are defined by specifying dimensional and geometrical constraints. The CAD kernel provides capabilities for solving dimensional and geometric constraints to fully define the model in space.
Features are defined by properties that may be either intrinsic or extrinsic. Intrinsic properties are self-contained, e.g. feature shape and explicit dimensions. Extrinsic properties involve two or more features, e.g. driven dimensions and geometric constraints between features (Shah and Mäntylä 1995; Bronsvoort et al. 2006). More precisely, extrinsic properties encapsulate the properties of a parent feature (the independent feature) in a child feature’s definition (the dependent feature). This facilitates relative feature positioning, with the benefit that modifications to a parent feature are propagated to child features (Shah and Mäntylä 1995). Consequently, the design intent (Hardee et al. 1996) can be intelligently embedded in the parametric model.
Anzeige
With the rise in capabilities of mathematical approaches to aid design, several commercial systems provide capabilities for topology, shape and size optimisation (Chang 2015). However, mathematical design techniques are typically deployed in isolation from the feature-based CAD model. For example, topology optimisation commonly employs the density-based approach (Bendsoe 1989) in a CAE environment. Post-processing is required to extract the boundary of the optimised design or identify appropriate features to create a feature-based representation of the optimised design (Subedi et al. 2020). To recover any loss in optimality resulting from post-processing, subsequent shape optimisation is implemented by perturbing the geometry in a way that is constrained by the chosen CAD parameterisation. An alternative to density-based optimisation is the Moving Morphable Components (MMC) framework. MMC facilitates CAD-centric topology optimisation by directly controlling parameters that define components1 in the design space. While this alleviates the challenge of creating a feature-based CAD model, post-processing may still be required (Subedi et al. 2020).
The motivation of this work is to extend MMC framework to support the optimisation of components defined with intrinsic shape and dimensional parameters, and extrinsic geometric constraints. In this work, extrinsic geometric constraints are applied after an initial MMC optimisation with unconstrained components2, in essence, facilitating both topology and shape optimisation in the same MMC environment. Specifically, this work focuses on refining components in a CAD-centric manner where perturbations of parent components propagate to child components, and perturbations of child components must respect their geometric constraints to parent components. Critically, the developed techniques are hosted in the same environment as the initial MMC topology optimisation. This supports the use of a single optimisation environment existing in parallel to the CAD environment.
The following section outlines the literature forming the basis of this work along with alternative approaches. Section 3 presents the methodology, describing how the proposed extensions are integrated into the MMC framework. The approach is demonstrated in Section 4 by optimising several example cases of varying complexity and with a range of feature-based templates, geometric parameters, and geometric constraints. Section 5 discusses the capabilities of the approach and issues that arise as challenges for future work (Section 7). Conclusions are presented in Section 6.
2 Literature review
The MMC framework facilitates topology optimisation by perturbing a set of components within a design domain. The components are defined with explicit geometric parameters and are mapped to a fixed mesh (the analysis domain) using topology description functions (TDFs). Several review papers have presented recent developments in the MMC framework (Wein et al. 2020; Li et al. 2024). Developments pertaining to the component representation and geometric constraints are relevant to this work and are considered further in this section.
Anzeige
Prior to the invention of the MMC framework, Mei et al. 2008 utilised geometric primitives including circles, triangles, and ellipses in conjunction with constructive solid geometry operations. The MMC approach was first proposed using rectangular components defined using a hyperelliptic TDF (Guo et al. 2014), where the design variables were the centre point coordinates, angular orientation, length, and width. This was extended to components with variable width (Zhang et al. 2016b), and then components with curved spines (Guo et al. 2016). Components with curved spines were enhanced by introducing parametric Bezier curves, providing a more natural connection with CAD systems (Zhu et al. 2021). While using Bezier curves to define the surface boundary representation of a design has been demonstrably effective from an optimisation perspective (Zhang et al. 2017a, b; Du et al. 2019), it does not provide a direct link to a feature-based model. This paper focuses on components with a clear link to feature-based templates. This is achievable by defining component spines and boundaries with Bezier curves, analogous to the swept feature available within CAD systems (Shannon et al. 2022).
Several approaches have been developed to impose constraints on components within the MMC optimisation formulation, either using optimisation constraints or adding a penalty to the objective function. While lower bounds on the design variables control a component’s minimum length and width, this cannot control minimum length scales between intersecting components (e.g. corner to corner contact). This was addressed by imposing a “minimum length scale” constraint on the intersection distance between components (Zhang et al. 2016a). An alternative formulation was implemented by constraining the minimum distance between components, imposed as a constraint between the components’ virtual skeleton, with an additional constraint on the minimum component width (Wang et al. 2019). A similar challenge arises when imposing maximum constraints on a component’s design variables. For example, attempting to control the maximum width of a component by constraining the design variables may be circumvented in the optimisation by several overlapping components in parallel. This was mitigated by a constraint that imposed a void region in the area surrounding a component (Hoang and Jang 2017). A second constraint was added on the intermediate material at the component ends, intending to mitigate “just touching” components and establish solid connections between components (Hoang and Jang 2017). An alternative approach for imposing a spatial constraint between components (applied to stiffening ribs on a panel) was implemented by constraining the maximum aggregated auxiliary density of the stiffening ribs, preventing overlapping ribs. A minimum separation between the ribs was imposed by adding the separation width to the auxiliary density calculation (Zhang and Norato 2017). Niu and Wadbro (2019) added a penalty function to the optimisation objective function to penalise parallel overlapping components. The penalty function combined the angular difference between components with an inter-component distance metric. Smith and Norato (2019) developed an angular difference metric as an optimisation constraint and defined a no-overlap region within components to constrain connections to the components’ ends. These constraints were implemented in the topology optimisation of a wing-box (Smith and Norato 2023). More recently, (Xu et al. 2025) presented a method of joint-driven MMC, where a set of joint components are used to connect the structural components. This retains the advantages of the MMC method while increasing optimisation stability and issues with “dirty geometry”.
An intrinsic limitation of imposing constraints and adding penalties to the optimisation objective function is the artificial control of the layout of components within the MMC optimisation. They can influence the topology of the optimal design, positively or negatively (Smith and Norato 2019), and can also require continuation schemes to manage the effects of the constraints on the optimisation (Hoang and Jang 2017; Wang et al. 2019). Crucially, they are not analogous to extrinsic geometric constraints typically used in feature-based CAD modelling. While Deng and Chen (2016) enforced endpoint-to-endpoint constraints, they were predefined on a subset of components within the design space and did not naturally emerge as the design matured.
This work targets the novel space of applying explicit geometric constraints between components, analogous to the extrinsic constraints available within CAD systems. It is important to note that these geometric constraints are not optimisation constraints. Rather, they are imposed on the design by linking the component’s design variables through algebraic functions. Extrinsic constraints involve forming geometric relationships between multiple previously independent components. For example, an extrinsic geometric constraint can be formed by enforcing a coincidence relationship between the endpoint of a child component and the endpoint of a parent component. This results in the endpoint of the child component being driven by (dependent on) the location of the parent component’s endpoint. The design variables originally associated with the child component’s constrained endpoint are removed from the optimisation and design specification. This extends the work of Shannon et al. (2022) where CAD-inferred feature-based templates were used to represent the component geometry, and post-processing was applied to identify geometric constraints between the components after an MMC optimisation (Shannon et al. 2023). It should be noted that the geometric constraints in this work are applied after an initial unconstrained optimisation, and are implemented in the MMC framework to re-optimise designs after feature clean-up and specification of the constraints (Fig. 1). This mitigates the risk of unnecessarily constraining the design space while ensuring the final design integrates with a feature-based CAD model seamlessly.
Fig. 1
Flowchart depicting design progress: a initial configuration, b unconstrained MMC optimisation, c feature clean-up and geometric constraint identification ready for re-optimisation
This section outlines the methodology for implementing geometric constraints between components within the MMC framework. Creating and aggregating the implicit representation of the CAD-based features in a form suited to the MMC framework is discussed in Sect. 3.1. This facilitates the initial topology optimisation of components without geometric constraints. Next, the proposed geometric constraints are considered:
Tangential constraint between feature spines (Sect. 3.3)
Normal constraint between feature spines (Sect. 3.4)
These geometric constraints have been selected as they correspond to geometric constraints commonly used in commercial CAD software. Identification of E-to-E and E-to-S constraints has been automated using the methods developed by Shannon et al. (2023). While the tangential and normal constraints have been specified manually in this work, they could be automated similarly by specifying tolerances on the dot product of intersection vectors between components’ spines. The technical details in Sect 3.2 - 3.4 focus on modelling constrained components within the MMC framework and calculating the corresponding geometric sensitivities. This ensures that previously published work on MMC topology optimisation integrates seamlessly with the developments presented in this work. Finally, the implementation of the proposed constraints in the MMC framework is discussed in Sect. 3.5.
3.1 Feature representation
In this work, features include 2D: linear, uniform width features; and generalised Bezier features. Following the work of Guo et al. (2014), linear width features are parameterised with two control points and a width variable, \(D\left({p}_{0},{q}_{0},{p}_{1},{q}_{1},w\right)\), where \(p\) is the x-coordinate of a control point, \(q\) is the y- coordinate, and \(w\) is the width parameter. Following Shannon et al. (2022) the vector of design parameters for a generalised Bezier feature is given as \(D\left({b}_{0},\dots ,{b}_{d}\right)\), where \({b}_{i}=\left({p}_{i},{q}_{i},{w}_{i}\right)\) are the parameters of the \(i\) th control point and \(d\) is the degree of the Bezier curve. A subset of the vector of design variables, \(P\subset D\), can be defined with only the \((p,q)\) coordinates in \(D\) (i.e. excluding the width variables). The TDF in this work is constructed using a piece-wise signed distance function following that developed by Norato et al. (2015),
where \(x,y\) are the coordinates of the analysis mesh point, \({t}^{*}\) is the curve parameter where the mesh point is projected perpendicularly to the spine curve (linear or Bezier), and \(\Vert n\left({\varvec{P}},{t}^{*},x,y\right)\Vert\) is the magnitude of the normal projection vector. Further details on this representation can be found in the work of Shannon et al. (2022). The \(max\) function is required as there may be multiple normal projection vectors between a mesh point and the Bezier spine curve.
Piece-wise signed distance functions maintain a constant transition width around the boundary of the implicit component representation (Zhou et al. 2016). This can be controlled explicitly using the regularised Heaviside function
where \(\alpha\) is a lower limit and \(\epsilon\) is the regularisation parameter, set at \(1{x10}^{-2}\) and 10, respectively (as commonly used in MMC literature). An example of the implicit representation of a degree-two Bezier feature using Eq. (1) and (2) is depicted in Fig. 2, where \({b}_{0}=\left(\text{100,100,75}\right)\), \({b}_{1}=\left(\text{150,500,50}\right)\), and \({b}_{2}=\left(\text{800,200,100}\right)\).
Gradient-based optimisation relies on accurate sensitivity calculations. The Kreisselmeier-Steinhauser (KS) function (Kreisselmeier and Steinhauser 1979)
is used to aggregate features in a differentiable form. The \(k\) parameter controls the accuracy of the approximation, where a larger value corresponds more closely to a Boolean union. Practical limits must be imposed on \(k\) and \(\epsilon\) to prevent numerical overflow. When \(k{\phi }_{i}\gg 0\), then \({e}^{k{\phi }_{i}}\) and \(\text{ln}\left(k{\phi }_{i}\right)\to +\infty\), and when \(k{\phi }_{i}\to 0\), then \(\text{ln}\left(k{\phi }_{i}\right)\to -\infty\). This is critical for the transition region on the boundary of components, where \({-\epsilon <\phi }_{i}<\epsilon\). All other values of \(\phi\) are mapped to \(\alpha\) or \(1\) after the application of Eq. (2). Thus, knowledge of computational limitations clearly defines the boundary of numerical instability, depicted in Fig. 3 for implementation in MATLAB.
where \({\phi }_{n}\) is the TDF for component \(n\), and \(N\) is the total number of components.
3.2 Coincident constraints
Two forms of coincident constraint are considered: endpoint-to-endpoint (E-to-E) and endpoint-to-spine (E-to-S). This is analogous to creating a coincident constraint in CAD software, where a curve endpoint (or the curve itself for E-to-S constraints) is assigned as the parent geometry, and a second curve’s endpoint is designated as the child geometry.
Defining a coincident E-to-E constraint removes the child point’s coordinates from the optimisation (and CAD) design variables (Fig. 4). Hence, perturbing the parent control point will also perturb the child control point. This is reflected in the sensitivity calculation as a simple summation extension of Eq. (5), expressed as
where \(n\) is the parent component and \({I}_{con}\) is the set of child components. For example, the sensitivity for \(a={q}_{1,n}\) is depicted in Fig. 53.
With a coincident E-to-S constraint, the constrained child point’s coordinates, \({\left(p,q\right)}_{m\to n}\), are expressed as a function of the parent component’s spine curve. This applies to both linear and Bezier spine curves and is depicted in Fig. 6 for a linear curve. In the examples presented in this work it is assumed that the first control point of a child component’s spine curve is constrained to the parent component, i.e. the constrained point, \({\left(p,q\right)}_{m\to n}\), is \({\left(p,q\right)}_{0,m}\). For a linear curve, the coincident point’s coordinates of the child component, \(m\), are a function of a linear curve
where \(t\) is substituted with \({t}_{m\to n}\), the parametric position where component \(m\) intersects component \(n\). Similarly, for a degree-two4 Bezier spine curve
An alternative form can be expressed for linear spine components, where the intersection point is expressed as a function of the linear distance from the starting point of the parent component, \({L}_{m\to n}\), as
where \({L}_{n}\) is the length of the parent component. This forms a natural link with parametric dimensioning in CAD systems. However, the linear distance from the starting point of a Bezier curve to the intersection point cannot be used in the optimisation as it may not define a unique point on the curve. Therefore, the curve parameter, \({t}_{m\to n}\), must be used for Bezier components. From an optimisation perspective, using the parameter \({t}_{m\to n}\) as the design variable allows the constrained feature to be placed at any point along the length of the parent feature, i.e. the range of \({t}_{m\to n}\in [\text{0,1}]\) is constant, even when the length of the parent feature changes during the optimisation. Conversely, using the parameter \({L}_{m\to n}\), the position of the child feature must respect design variable constraints, and cannot concurrently update as the length of the parent feature changes.
The two independent design variables associated with the driven control point are now replaced with a constraint parameter, \({t}_{m\to n}\) (or \({L}_{m\to n}\)). Two new scenarios must be considered for calculating derivatives: perturbing the constraint parameter; and perturbing a control point of the parent component.
The sensitivity of the constraint parameter, \({t}_{m\to n}\), is obtained by a chain rule extension of Eq. (5), as
where \(\partial {p}_{m\to n}/\partial {t}_{m\to n}\) and \(\partial {q}_{m\to n}/\partial {t}_{m\to n}\) are calculated algebraically from Eq. (7) or (8).
The sensitivity of a control point of the parent component also requires a chain rule extension of Eq. (5). An additional component is required as the spatial position of the child component is a function of the parent component parameters (Eq. (7), (8)),
The terms \(\delta {p}_{m\to n}/\delta a\) and \(\delta {q}_{m\to n}/\delta a\) are calculated from Eq. (7) or (8). An example of the sensitivity field corresponding to the connected components in Fig. 6 is shown for \({p}_{0,n}\) in Fig. 7, depicting the perturbation of both components.
Note, Eq. (11) has been expressed for a single child component, \(m\), constrained to a parent component, \(n\). If a set of child components, \({I}_{con}\), are connected to component \(n\), this can be generalised as
Another scenario occurs when the child component, \(m\), has a subsidiary child component, \(o\), constrained to its spine curve at \({t}_{o\to m}\). Here, a chained formulation is required. For example, the sensitivity \(\delta {\phi }_{o}/\delta a\) (where \(a\) is a design variable of feature \(n\)) is
This term must be summed with the terms for the other components given in Eq. (11). Note, \(\partial {p}_{o\to m}/\partial {q}_{m\to n}\) and \(\partial {q}_{o\to m}/\partial {p}_{m\to n}\) can be omitted as they are zero. This theory may be extended across a series of interconnected components as depicted for a series of connected components in Fig. 8. These extensions ensure the optimisation updates components in the same manner as design changes propagate through a feature-based CAD model.
Fig. 8
Sensitivity propagation for interconnected components
This work considers tangential constraints between components where a coincident constraint exists between an endpoint of a child curve and a parent component’s spine curve. The tangential constraint specifies that the child component’s spine curve is constrained tangentially to the parent component’s spine curve. This is depicted for components with degree-two Bezier spine curves, Eq. (8), in Fig. 9. Here, the first control point, \({\left(p,q\right)}_{0,m}\), is a function of the intersection parameter, \({t}_{m\to n}\), given by Eq. (8) and the second control point, \({\left(p,q\right)}_{1,m}\), is given as,
where \({\widehat{{\varvec{T}}}}_{n}\left({{\varvec{P}}}_{n},{t}_{m\to n}\right)\) is the unit tangent vector of the parent curve at the parameter position \({t}_{m\to n}\), and \(S\) is a scalar multiplication factor. The new constraint parameters, \({t}_{m\to n}\) and \(S\), replace \({p}_{0}\), \({q}_{0}\), \({p}_{1}\), and \({q}_{1}\) in the vector of design variables for component \(m\), \({{\varvec{D}}}_{m}\), reducing \({{\varvec{D}}}_{m}\) to \(\left(\left({t}_{m\to n},{w}_{0}\right),\left(S,{w}_{1}\right),\left({p}_{2},{q}_{2},{w}_{2}\right)\right)\).
Fig. 9
Component configuration with E-to-S and tangential constraints
The sensitivity of the child component’s “free” control point, \({\left(p,q\right)}_{2,m}\), is calculated as normal using Eq. (5). The derivative with respect to (wrt) the intersection parameter, \({t}_{m\to n}\), is calculated as
where the terms \(\delta {p}_{1,m}/\delta {t}_{m\to n}\), \(\delta {q}_{1,m}/\delta {t}_{m\to n}\), \(\delta {p}_{1,m}/\delta S\), and \(\delta {q}_{1,m}/\delta S\) are calculated from Eq. (14).
The sensitivity of a parent component’s parameter, \(a\in {{\varvec{D}}}_{n}\), must include the sensitivity of the connected control point and the tangentially constrained control point of the child component. Both are functions of the parent component’s spine curve parameters (Eq. (8) & (14)). Thus, the sensitivity of a parent feature parameter, \(a\), is expressed as
where the terms \(\delta {p}_{1,m}/\delta a\) and \(\delta {q}_{1,m}/\delta a\) are calculated from Eq. (14). An example corresponding to the components in Fig. 9 is shown in Fig. 10 for the parent parameter \(a={p}_{1,n}\).
Like tangential constraints, a normal constraint is defined between components where a coincident constraint exists between an endpoint of a child curve and a parent component’s spine curve. The normal constraint enforces that the second control point of the child curve is on a normal vector from the parent curve. This infers that the child curve is always perpendicular to the parent curve at the point of intersection, depicted in Fig. 11. For child components with degree-two Bezier spine curves, the first control point, \({\left(p,q\right)}_{0,m}\), is a function of the intersection parameter, \({t}_{m\to n}\), given by Eq. (8). The second control point, \({\left(p,q\right)}_{1,m}\), is defined by the scaled unit normal vector from the point of intersection on the parent spine curve, as
where \({\widehat{{\varvec{N}}}}_{n}\left({{\varvec{P}}}_{n},{t}_{m\to n}\right)\) is the unit normal vector to the spine curve at the position, \({t}_{m\to n}\), and \(R\) is a scalar multiplication factor. The vector of design variables for the child component is updated as \({{\varvec{D}}}_{m}\left(\left({t}_{m\to n},{w}_{0}\right),\left(R,{w}_{1}\right),\left({p}_{2},{q}_{2},{w}_{2}\right)\right)\).
Fig. 11
Component configuration with E-to-S and normal/perpendicular constraint
The sensitivities of the child feature parameters \({t}_{m\to n}\) and \(R\) are calculated in the same manner as for the tangential constraint using Eq. (15) & (16), respectively. However, for the normal constraint, the terms \(\delta {p}_{1,m}/\delta {t}_{m\to n}\), \(\delta {q}_{1,m}/\delta {t}_{m\to n}\), \(\delta {p}_{1,m}/\delta S\), and \(\delta {q}_{1,m}/\delta S\) are calculated from Eq. (18). Similarly, the sensitivity of a parent component variable is calculated using Eq. (17), but with the terms \(\delta {p}_{1,m}/\delta a\) and \(\delta {q}_{1,m}/\delta a\) calculated from Eq. (18).
3.5 MMC implementation
In summary, the theory outlined develops methods to integrate CAD-inferred extrinsic geometric constraints between components in the MMC framework, in conjunction with a CAD-inferred feature-based component representation. This allows the specification of the MMC optimisation problem with an unambiguous connection to the CAD domain. This work was implemented as an extension to the MATLAB-based MMC framework provided by Zhang et al. (2016b). The Method of Moving Asymptotes (MMA) was used in the gradient-based optimisation (Svanberg 1987).
4 Numerical examples
The proposed developments for the MMC framework are demonstrated below for four different problems with the objective of minimising the structural compliance. For details on the optimisation formulation, readers are referred to (Shannon et al. 2022). The convergence criterion is defined as a maximum change of 0.001% in the objective function over five successive iterations. It is emphasised that the geometric constraints presented in this work are not implemented as optimisation constraints, they are encoded as part of the component’s definitions.
The first examples are a cantilever beam and a Messerschmitt–Bölkow–Blohm (MBB) beam, modelled with linear spine components. This work extends that presented by Shannon et al. (2023) where post-processing and establishment of endpoint-to-endpoint (E-to-E) and endpoint-to-spine (E-to-S) constraints caused perturbations of the optimised geometry. These examples are selected as, while the post-processing identified that endpoint-to-endpoint and endpoint-to-spine constraints could simplify the geometry representation, no attempt was made to re-optimise the geometry after applying the constraints. Next, a bridge design and hanging load design demonstrate the application of endpoint-to-endpoint, endpoint-to-spine, tangential and normal constraints, and combinations thereof. The applied constraints are depicted in the examples according to the key in Fig. 12. These develop examples previously presented by Shannon et al. (2022) and have been selected to validate the approach with more complex component representations and geometric constraints. The degree-two generalised Bezier formulation has been selected to model the components in these examples. Identification of E-to-E and E-to-S constraints has been automated using the methods and parameters developed by Shannon et al. (2023). This is applicable for the cantilever beam and MBB beam examples. Tangential and normal constraints have been specified manually in the bridge and hanging load design examples, based on visual inspection of the geometry. Automation of the latter constraints remains as an item for future work.
The design domain (120x40 elements) for the cantilever beam is shown in Fig. 13a, depicting the built-in constraint on the left edge and a point load applied at the midpoint of the right edge. Three configurations are compared, with the initial design obtained using unconstrained components shown in Fig. 13b. These are taken from the post-processed results presented by Shannon et al. (2023) who automated feature clean-up and constraint identification. They pointed out that shape refinement was required due to geometric deviations incurred from the post-processing and application of the geometric constraints. The applied geometric constraints, number of optimisation design variables, optimised compliance, and corresponding figure for each design are listed in Table 1. All designs have sixteen linear, constant width components.
Fig. 13
Cantilever beam a design domain b configuration obtained using unconstrained MMC
The design domain (240x40 elements) for the MBB beam is shown in Fig. 15a. The symmetrical nature of the domain permits only the right-hand side of the domain to be considered. Three configurations are compared, taken from Shannon et al. (2023), with the initial configuration shown in Fig. 15b. The applied geometric constraints and optimisation results for each design are listed in Table 2. All designs have six linear, constant width components.
Fig. 15
Bridge design a design domain b initial configuration
The domain (120x40 elements) for a bridge is shown in Fig. 17a, depicting the boundary constraints at the bottom corners and the distributed load applied to a non-design region (blue) that remains as a fixed component in the domain. Four configurations develop the initial solution (Fig. 17b) for generalised degree-two Bezier components presented by Shannon et al. (2022). The applied geometric constraints and optimisation results for each design are listed in Table 3. All designs have four degree-two generalised Bezier components.
The design domain (120x40 elements) for the hanging load design is shown in Fig. 19a, depicting the boundary constraints and the applied load at the midpoint of the bottom edge. Three configurations develop the initial solution (Fig. 19b) for generalised degree-two Bezier components presented by Shannon et al. (2022). The applied geometric constraints and optimisation results for each design are listed in Table 4. All designs have four degree-two generalised Bezier components.
Fig. 19
Manufacturing a coincident, and, b overlapping holes
The methodology outlined in Sect. 3 outlines an advancement in the current capabilities of the MMC framework. Both CAD-based features and extrinsic geometric constraints can now be embedded in the optimisation framework, establishing a direct link with feature-based CAD modelling. It has been demonstrated that geometric derivatives of parent components propagate to child components and that derivatives of child components respect geometric constraints with parent components. This mirrors the behaviour of a hierarchical CAD model when parametric updates are applied. A trend is observed across all the examples in Sect. 4, where the application of geometric constraints reduces the number of design variables (as previous independent variables are combined) and reduces the optimised structural performance of the design (reflecting the reduction in the flexibility in the model). This is depicted for the cantilever beam results in Fig. 21. This demonstrates that reducing the number of design variables (a proxy for design complexity) is achievable with a minor penalty on the optimised compliance. For example, the design in Fig. 14b has 31.3% fewer design variables than Fig. 14a, with an increase in compliance of 0.28% and the design in Fig. 14c has 52.5% fewer design variables than Fig. 14a, with an increase in compliance of 1.51%. Geometric constraints have the additional benefit that they can improve manufacturability. For example, enforcing coincident endpoints removes partially overlapping connection points, as depicted for the central joint in the cantilever beam in Fig. 22. Significantly, this has been achieved without specifying additional optimisation-based manufacturing constraints. Rather, the optimisation cost, in terms of the number of optimisation design variables, has been reduced.
The proposed modifications facilitate topology and shape optimisation in the MMC framework. It is important to note that even with the proposed modifications for shape refinement with geometric constraints changes in topology can still occur. This is due to the implicit representation of the design components. Implementation of several geometric constraints has been considered, and it has been demonstrated that the sensitivity calculations remain entirely algebraic. Derivatives of the geometric constraints were calculated with the computer algebra system, Maxima. However, only a subset of the constraints available in commercial CAD systems have been considered. A more user-friendly link may be established by calculating geometric derivatives from the CAD system directly, as proposed by Agarwal et al. (2018). This provides a generic approach for calculating CAD-based derivatives respecting geometric constraints, however, a careful mapping would be required between the CAD-based surface derivatives and the implicit geometry representation used in the MMC framework. Finally, the proposed geometric constraints have been implemented between the spines of 2D components. This needs to be extended to consider constraints between the outer boundary/surface of both 2D and 3D components, as it is more common for designers to impose constraints on the outer surfaces of features rather than on feature spines as was done in this work. Novel topology description functions need to be developed to facilitate this.
6 Conclusion
This paper has presented a method of extending the MMC framework to consider extrinsic geometric constraints between components. These correspond to those available in commercial CAD systems. In particular,
It has been shown that coincident, tangential, and normal constraints can be used to create a hierarchical component representation in the MMC framework.
Derivatives of the constraints were calculated algebraically and implemented in a gradient-based optimiser.
The numerical examples demonstrate the effectiveness of the constraints, showing that a significant reduction in the number of design variables can be achieved with only a small penalty on the optimisation objective.
The imposed constraints have additional advantages for manufacturing considerations.
7 Future work
Future work will address the limitations identified in Sect. 5. In particular,
Automate the calculation of geometric derivatives using CAD-based methods linked with the implicit geometry representation.
Apply geometric constraints to the outer boundary/surface of 2D and 3D components.
Consider additional manufacturing requirements that can be satisfied with geometric constraints.
Automate the application of geometric constraints within a single optimisation process.
Declarations
Conflict of interest
No conflicts of interest are declared.
Replication of results
The main code for this work (MATLAB) was based heavily on that published by Zhang et al. (2016b) and Shannon et al. (2022). Developments presented in this work can be replicated based on the descriptions provided in the manuscript.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
The terms components and features are analogous. Components is used in this work when the optimisation domain is in view, features is used when considering the CAD system.
For clarity, the sensitivity plots throughout the manuscript are multiplied by the regularised Heaviside derivative (Eq. (3)). This sets everywhere in the domain to zero except on the component boundaries.
Die im Laufe eines Jahres in der „adhäsion“ veröffentlichten Marktübersichten helfen Anwendern verschiedenster Branchen, sich einen gezielten Überblick über Lieferantenangebote zu verschaffen.