1 Introduction

Link mechanism (also called linkage) is an assembly of rigid bodies, i.e., links, connected by joints. For designing mechanisms, many methods have been proposed mainly based on analytical formulations that are applicable to planar mechanisms with small numbers of links and joints (Artobolevsky 1977; Freudenstein 1995; Erdman 1981). Numerical methods have also been developed to design mechanisms systematically, and the process of mechanism design, or synthesis, is naturally formulated as an optimization problem. Use of numerical optimization methods can date back to 1960s; see the survey by Root and Ragsdell (1976).

The procedure of synthesis of mechanism consists of type synthesis, number synthesis, and path (dimensional) synthesis. Type synthesis determines the type and connectivity of links (rigid parts), number synthesis determines the numbers of links and joints to obtain a mechanism with the desired degree of kinematical indeterminacy, and path synthesis finds the locations of nodes so that the prescribed path is followed by the mechanism. Early studies of systematic procedures for type synthesis can be found in the surveys by Olson et al. (1985) and Erdman (1995).

The type synthesis and number synthesis can be combined and formulated as a topology optimization problem, which is intrinsically a combinatorial problem and systematically solved using an optimization approach (Zhang et al. 1984; Krishnamurty and Turcic 1992), a graph theoretical enumeration method (Kawamoto et al. 2004a), or enumeration within bar-and-slider frameworks (Katoh and Tanigawa 2009). Some methods based on metaheuristics, including genetic algorithm (GA), have been developed for dealing with this combinatorial issue (Liu and McPhee 2004).

In contrast to type synthesis and number synthesis, which have combinatorial property, path synthesis problem can be easily formulated as a nonlinear programming (NLP) problem for minimizing the error of the path from the prescribed path (Collard and Gosselin 2011). The kinematical properties of rigid body or link can be incorporated in the constraints, or in the objective function so that the error of the geometry from the prescribed shape is minimized (Minnaar et al. 2001). Another well-known approach in path synthesis is to model the structure as an elastic truss or finite elements and minimize the stored strain energy or the external load in the course of the deformation (Vallejo et al. 1995; Jiménez et al. 1997; Avilés et al. 2000; Ohsaki and Nishiwaki 2009; Avilés et al. 2010). Fernández-Bustos et al. (2005) used elastic finite element analysis for kinematic analysis and also presented a GA-based synthesis method.

The three steps of mechanism synthesis can be combined and solved by a so-called generalized ground structure approach for topology and geometry optimization of trusses, i.e., a ground structure that has many bars and joints is prepared, and the unnecessary bars and joints are removed and the nodal locations are updated through optimization. A gradient-based approach is preferred to a heuristic approach to find the geometry accurately. However, a feasible solution, where the output displacement is in the specified direction, is found only if the initial solution is selected appropriately, and only a limited number of initial solutions lead to mechanisms that exhibit the desired deformation as mentioned by Sedlaczek and Eberhard (2009) and Ohsaki and Nishiwaki (2009). It is difficult to apply an graph enumeration approach (Kawamoto 2005) to ground structures with moderately large number of degrees of freedom (DOFs).

In this respect, some two stage algorithms have been developed for carrying out the number synthesis by solving a combinatorial problem, and the path synthesis by tuning the nodal location using an NLP. Ohsaki et al. (2009) enumerated statically determinate trusses with non-crossing members, which are used as initial ground structures of path synthesis. Kawamoto et al. (2004b) noted that a simple ground structure approach for truss topology optimization may result in a spurious mechanism, and added constraints on compliance and numbers of nodes and members within the framework of small displacement. Optimization methods based on rigid blocks connected by springs have been developed by Kim et al. (2007) and Nam et al. (2012). Pucheta and Cardona (2013) combined graph theoretical enumeration for number synthesis and GA for path synthesis for finding mechanism undergoing two tasks.

When number synthesis is formulated as an optimization problem, it is not trivial how to avoid solutions with large degree of kinematical indeterminacy. Kim et al. (2007) incorporated a fictitious load and gave a small upper bound for the strain energy. In the method of Stolpe and Kawamoto (2005), solutions with two or more degrees of kinematical indeterminacy are pruned during the branch-and-bound procedure.

Furthermore, most of the existing numerical approaches can be applied to planar mechanisms. For spatial mechanisms, it is not practically acceptable to assign ideal pin-joints for all nodes to rotate around three axes. Therefore, it is desired to design a spatial mechanism with joints that can rotate around limited number of axes, such as revolute and universal joints, which are called partially rigid joints in this paper. The authors developed a method for generating deployable structures composed of bars connected with partially rigid joints (Tsuda et al. 2013).

In this paper, we generate planar and spatial mechanisms by releasing the member-end forces and removing members from the initial ground structure modeled as rigidly-jointed frame. A minimization problem is formulated as as a linear programming (LP) problem for finding a link mechanism that has moderately small numbers of released member-end forces and removed members. The problem is regarded as a plastic limit analysis problem, which is to be solved to obtain an infinitesimal mechanism that has single degree of kinematical indeterminacy. A heuristic approach is presented to solve the LP problem again after updating the nodal locations in the direction of inextensional deformation. It is shown in the numerical examples that various planar and spatial mechanisms can be easily found using the proposed method.

2 Design problem of link mechanisms as partially rigid frames

Like a conventional ground structure approach to topology optimization of trusses and frames, we prepare a frame structure with many nodes and members in the two- or three-dimensional space. This initial frame structure consists of m members, which are modeled by the Euler–Bernoulli beam elements. We use this structure as an initial solution for design of link mechanisms.

Mechanisms are classified into infinitesimal mechanisms and finite mechanism. An infinitesimal mechanism deforms without internal force if the deformation is assumed to be small. By contrast, a finite mechanism has no internal force even under large deformation.

Small deformation is assumed in the course of the following design procedure. Hence, a structure obtained by the proposed method is not necessarily a finite mechanism. We present a heuristic approach in Section 4 to find a finite mechanism.

Let \(\boldsymbol {u} \in \mathbb {R}^{d}\) denote the displacement vector of the frame structure, where d is the number of DOFs. We use \(\boldsymbol {c}=(c_{1},\dots ,c_{n})^{\mathrm {T}} \in \mathbb {R}^{n}\) to denote the generalized strain vector, where n = 3m for a planar frame consisting of extension and two bending components for each member, and n = 6m for a spatial frame consisting of extension, torsion, and four bending components. The compatibility relation between c i and u can be written as

$$ c_{i} = \boldsymbol{h}_{i}^{\mathrm{T}} \boldsymbol{u} , $$
(1)

where \(\boldsymbol {h}_{i} \in \mathbb {R}^{d}\) is a constant vector. Note that matrix \(\mathit {H} \in \mathbb {R}^{d \times n}\) defined by

$$ \mathit{H} = \left[ \begin{array}{@{}c|c|c|c@{}} \boldsymbol{h}_{1} & \boldsymbol{h}_{2} & \cdots & \boldsymbol{h}_{n} \\ \end{array} \right] $$
(2)

is the equilibrium matrix that gives relation between the independent components of member-end forces and nodal loads.

For example, for a single member in Fig. 1, c 1, c 2, and c 3 represent member extension and rotations of hinges at the ends 1 and 2, respectively, which are defined by the nodal displacement vector u = (u x1, u y1, ϕ 1, u x2, u y2, ϕ 2)T as

$$ c_{1} = (u_{x2}-u_{x1}) \cos\theta + (u_{y2}-u_{y1}) \sin\theta, $$
(3a)
$$ c_{2} = \phi_{1} - \frac{1}{L}[-(u_{x2}-u_{x1}) \sin\theta + (u_{y2}-u_{y1}) \cos\theta], $$
(3b)
$$ c_{3} = \phi_{2} - \frac{1}{L}[-(u_{x2}-u_{x1}) \sin\theta + (u_{y2}-u_{y1}) \cos\theta], $$
(3c)

The following relations are obtained from (1) and (3):

$$ \boldsymbol{h}_{1} = (-\cos\theta, -\sin\theta, 0, \cos\theta, \sin\theta, 0)^{\mathrm{T}}, $$
(4a)
$$ \boldsymbol{h}_{2} = (-\sin\theta/L, \cos\theta/L, 1, \sin\theta/L, -\cos\theta/L, 0)^{\mathrm{T}}, $$
(4b)
$$ \boldsymbol{h}_{3} = (-\sin\theta/L, \cos\theta/L, 0, \sin\theta/L, -\cos\theta/L, 1)^{\mathrm{T}}. $$
(4c)

Let P x1, P y1, R 1, P x2, P y2, and R 2 denote the nodal forces corresponding to u x1, u y1, ϕ 1, u x2, u y2, and ϕ 2, respectively. The axial force and bending moments of the hinges at the ends 1 and 2 are denoted by N, M 1, and M 2, respectively. Then the following relation holds:

$$ \left[\begin{array}{ccccc} P_{x1} \\ P_{y1} \\ R_{1} \\ P_{x2} \\ P_{y2} \\ R_{2} \\ \end{array}\right] = \left[\begin{array}{ccccc} -\cos\theta & -\sin\theta/L & -\sin\theta/L \\ -\sin\theta & \cos\theta/L & \cos\theta/L \\ 0 & 1 & 0 \\ \cos\theta & \sin\theta/L & \sin\theta/L \\ \sin\theta & -\cos\theta/L & -\cos\theta/L \\ 0 & 0 & 1 \\ \end{array}\right] \left[ \begin{array}{cccc} N \\ M_{1} \\ M_{2} \\ \end{array}\right]. $$
(5)

Hence, the matrix

$$ H = \left[ \begin{array}{cccc} -\cos\theta & -\sin\theta/L & -\sin\theta/L \\ -\sin\theta & \cos\theta/L & \cos\theta/L \\ 0 & 1 & 0 \\ \cos\theta & \sin\theta/L & \sin\theta/L \\ \sin\theta & -\cos\theta/L & -\cos\theta/L \\ 0 & 0 & 1 \\ \end{array}\right] $$
(6)

defines the relation between the nodal forces and generalized stresses.

Fig. 1
figure 1

Definition of a member and nodal displacements

Figure 2a shows an example of an initial frame, which has m = 16 members and d = 21 DOFs, where the crossing diagonal members are not connected at the center. Our method generates a link mechanism by releasing some of member-end forces and removing some members, which are determined by solving an optimization problem that will be formulated in Section 3. In Fig. 2, we attempt to design a link mechanism that converts a horizontal input displacement at node (A) to a vertical output displacement at node (B). Specifically, suppose that node (A) called input node is subjected to a prescribed displacement \(\bar {u}_{\text {in}}\) (> 0) in the horizontal direction. We denote by u out the vertical displacement of node (B) called output node. Then we look for a link mechanism that satisfies \(u_{\text {out}} \ge \bar {u}_{\text {out}}\), where \(\bar {u}_{\text {out}} > 0\) is a specified lower bound for the output displacement. Such a mechanism satisfies

$$ c_{i} = \boldsymbol{h}_{i}^{\mathrm{T}} \boldsymbol{u} , \quad i=1,\dots,n , $$
(7a)
$$ u_{\text{in}} = \bar{u}_{\text{in}} , $$
(7b)
$$ u_{\text{out}} \ge \bar{u}_{\text{out}} . $$
(7c)

If a structure satisfies (7) and the requirements such that the structure has single kinematical indeterminacy undergoing the specified deformation, then it is regarded as a desired mechanism. In Section 3, we will formulate a maximization problem of u out, instead of specifying its lower bound.

Fig. 2
figure 2

Schematic overview of the generation procedure of mechanisms from a given frame; a ground structure, b a finite mechanism; solid square: rigid joint, blank circle: rotational hinge

Note that a system of linear equations in (7a) is underdetermined, because both c = (c 1,…,c n )T and u are considered unknown variables. The generalized strain c i represents the internal deformation corresponding to u. In other words, if c i ≠ 0, then the corresponding internal force is released to generate the mechanism composed of links. Conversely, if c i = 0, then the corresponding member-end deformation is fixed rigidly. More precisely, if c i ≠ 0 corresponds to extension of a member, then the member itself is removed. Alternatively, if c i ≠ 0 corresponds to member-end rotation, then the constraint on the rotation around the corresponding axis is released to make a partially rigid joint. Figure 2b shows an example of a finite mechanism that can be generated by the procedure presented in Section 3.

3 Norm-minimization problems for finding mechanisms

3.1 Mechanisms with small numbers of released member-end forces and removed members

An infinitesimal mechanism can be generated from a given frame structure by imposing constraints (7a)–(7c). However, the system of (7) has infinitely many, if any, solutions, because (7a) is underdetermined. Suppose that, at one of those solutions, many components of c are nonzero. This means that many degrees of member-end forces are released and/or many members are removed to generate a mechanism. Such a mechanism is not usually suitable for practical use, because it has a large degree of kinematical indeterminacy.

In the following, among the mechanisms satisfying (7), we attempt to find the one with few rotational hinges. Such a link mechanism corresponds to a solution with sparse c. A mechanism with few rotational hinges might have the following advantages:

  • Use of many rotational hinges often leads to increase of degree of kinematical indeterminacy of a mechanism. From a practical point of view, it is desired that a mechanism has a small, preferably single, number of modes of deformation.

  • A rotational hinge usually needs careful handling in manufacturing process. Also, movement of a rotational hinge in a real world structure inevitably involves friction, although in our design procedure the effect of friction is neglected. Therefore, manufacturability of a mechanism is expected to be enhanced and the production cost is reduced as the number of rotational hinges is reduced.

The observation above motivates us to minimize the number of nonzero components of c, simultaneously maximizing output displacement u out, when c and u are subjected to (7a) and (7b). For vector \(\boldsymbol {x} \in \mathbb {R}^{n}\), define supp(x)⊆{1,…,n} by

$$ \text{supp}(\boldsymbol{x}) = \{ i \in \{ 1,2,\dots,n \} \mid x_{i} \not= 0 \} . $$

The cardinality of supp(x), i.e., the number of nonzero components of x, is denoted by |supp(x)|. This optimization problem is formulated as

$$ \min\limits_{\boldsymbol{u},c_{1},\dots,c_{n}} {\quad} {-}u_{\text{out}} + \alpha |\text{supp}(\boldsymbol{c})| $$
(8a)
$$ \mathrm{s.{\,}t.} {\kern30pt}c_{i} = \boldsymbol{h}_{i}^{\mathrm{T}} \boldsymbol{u} , \quad i=1,\dots,n , $$
(8b)
$$ {\kern43pt}u_{\text{in}} = \bar{u}_{\text{in}} . $$
(8c)

Here, u in and u out are variables that are components of u, and α > 0 is a constant parameter controlling weights of two objectives: maximization of u out and minimization of the number of nonzero components of c. Problem (8) is known to be NP-hard (Natarajan 1995). In Section 3.2, we approximate this problem to an LP problem and introduce weights on c for generating a practically acceptable mechanism.

3.2 Approximation via minimization of sum of absolute values

We expect that an approximation of the solution of problem (8) is achieved by replacing |supp(c)| with ∥c1. Using minimization of the 1-norm is actually a well-known approach for finding a sparse solution of an underdetermined system of linear equations (Matoušek and Gärtner 2007). Applications of the 1-norm minimization include noise removal from images (Rudin et al. 1992), the basis pursuit for signal processing (Chen et al. 1998; Candès et al. 2008), a regression analysis called LASSO (Tibshirani 1996; 2011), and portfolio selection with fixed transaction costs (Lobo et al. 2007).

Consider a weighted 1-norm of c given by ∥diag(w)c1, where w i > 0 (i = 1,…,n) are constant weights. If w i has a large value, then c i often becomes 0 at the optimal solution. In Section 4, we assign a large value to w i for member extension, compared with that for hinge rotation, to avoid too many members to be removed. Also, if there exists a particular member for which the release of member-end force is avoided, then the corresponding w i is to be increased. By replacing |supp(c)| in (8) with ∥diag(w)c1, we obtain the following problem:

$$ \min\limits_{\boldsymbol{u},c_{1},\dots,c_{n}} {\quad} {-}u_{\text{out}} + \alpha\sum\limits_{i=1}^{n} | w_{i} c_{i} | $$
(9a)
$$ \mathrm{s.{\,}t.} {\kern31pt} c_{i} = \boldsymbol{h}_{i}^{\mathrm{T}} \boldsymbol{u} , \quad i=1,\dots,n , $$
(9b)
$$ {\kern43pt}u_{\text{in}} = \bar{u}_{\text{in}} . $$
(9c)

Problem (9) is much easier to solve than (8), because problem (9) is equivalent to an LP problem. To see this, we introduce additional variables γ 1,…,γ n that serve as upper bounds for |c 1|,…,|c n |, and rewrite (9) as

$$ \min\limits_{\boldsymbol{u},\gamma_{1},\dots,\gamma_{n}} {\quad} {-}u_{\text{out}} + \alpha\sum\limits_{i=1}^{n} w_{i} \gamma_{i} $$
(10a)
$$ \mathrm{s.{\,}t.} {\kern30pt}{-}\gamma_{i} \le \boldsymbol{h}_{i}^{\mathrm{T}} \boldsymbol{u} \le \gamma_{i} , \quad i=1,\dots,n , $$
(10b)
$$ {\kern40pt}u_{\text{in}} = \bar{u}_{\text{in}} . $$
(10c)

This is clearly an LP problem in variables u and γ 1,…,γ n .

Problem (9) is always feasible, because we can define c by (9b) for any u satisfying (9c). However, it is not necessarily bounded below. Boundedness of problem (9) will be discussed in Section 3.3 based upon the duality theory of LP.

3.3 Plastic limit analysis problem based on lower-bound theorem

In this section, we show that the dual problem of problem (10) is a conventional plastic limit analysis problem based on the lower-bound theorem, which is actually solved in Section 4.

For notational convenience, define \(\boldsymbol {f}_{\text {in}} \in \mathbb {R}^{d}\) and \(\boldsymbol {f}_{\text {out}} \in \mathbb {R}^{d}\) as vectors such that the components corresponding to u in and u out, respectively, are equal to 1 and all other components are 0.

The dual problem of problem (9) is formulated as

$$ \max\limits_{y_{1},\dots,y_{n},\lambda_{\text{in}}} {\quad} \bar{u}_{\text{in}} \lambda_{\text{in}} $$
(11a)
$$ \mathrm{s.{\,}t.} {\kern30pt} \sum\limits_{i=1}^{n} y_{i} \boldsymbol{h}_{i} = \boldsymbol{f}_{\text{out}} + \lambda_{\text{in}}\boldsymbol{f}_{\text{in}} , $$
(11b)
$$ {\kern41pt}\alpha w_{i} \ge |y_{i}| , \quad i=1,\dots,n , $$
(11c)

where \(\lambda _{\text {in}} \in \mathbb {R}\) and \(\boldsymbol {y}=(y_{1}, \dots , y_{n})^{\mathrm {T}} \in \mathbb {R}^{n}\) are the variables to be optimized. The details of deriving dual problems are shown in Appendix.

Problem (11) is regarded as the conventional plastic limit analysis problem based on the lower-bound theorem; see, e.g., Jirásek and Bažant (2002). Constraint (11b) is regarded as the force-balance equation, because H defined by (2) is the equilibrium matrix. Here, y i corresponds to the member-end force that is work-conjugate to c i .

The vector on the right-hand side of (11b) is considered the external load, where f out corresponds to the fixed part, λ in f in corresponds to the proportionally increased part, and λ in is the load factor. Constraint (11c) is analogous to the yield condition, where α w i corresponds to the absolute value of the generalized yield stress. This way, problem (11) can be viewed as the maximization of the load factor under constraints of the force-balance equation and the yield conditions.

From the observation above, the primal problem (10) is also interpreted as the plastic limit analysis based on the upper-bound theorem. The objective function in (9) can be viewed as the sum of the external work \(-\boldsymbol {f}_{\text {out}}^{\mathrm {T}} \boldsymbol {u}=-u_{\text {out}}\) corresponding to the fixed part of the load, and the internal plastic work \(\sum _{i=1}^{n}\alpha w_{i} |c_{i}|\). Here, c i corresponds to the generalized plastic strain. Since (9b) is the compatibility relation, u is considered the collapse mode. It follows from the standard principle of plastic limit analysis (or directly from the complementarity theorem of LP) that non-yielding, i.e., α w i > |y i |, implies no internal deformation, i.e., c i = 0. Thus we may naturally understand that u optimal for problem (9) corresponds to the motion of a mechanism, where plastic hinges in the limit analysis are interpreted as rotational hinges and axially yielded members are removed.

In the numerical examples, problem (11) is solved using a simplex method. The nodal displacements u and generalized strains c are obtained from the dual variables of constraints (11b) and (11c), respectively. We suppose the nodes of the ground structure are located at generic positions with no regularity; i.e., the nodes of ground structure are not located on a grid, and members have different lengths. Furthermore, loading condition is assumed to be generic. The following properties are satisfied for problems (9) and (11):

  • A nodal displacement vector u of a infinitesimal mechanism with single degree of kinematical indeterminacy can be obtained using a simplex method. The degree of kinematical indeterminacy may be larger than 1 if the structure has regularity and/or symmetry property.

  • If α in problem (9) becomes smaller with constant values of w i , then the penalty term becomes smaller and u out can have a large value; i.e., the objective value of problem (9) is not bounded below, and its dual problem (11) has no feasible solution. This situation corresponds to the fact that smaller α leads to smaller fully-plastic moments and yield axial forces in the left-hand side of the inequality constraint (11c); accordingly, the structure can not support even the fixed force f out.

  • By contrast, if α in problem (9) becomes larger, then the penalty term becomes larger, and u out tends to have a small value; consequently, a local mechanism in which only the input node moves is obtained to satisfy the equality constraint (9b) without displacement at the output node. This property can be explained also from problem (11). When α is large, λ in can have a large value, and the effect of f out becomes small compared with that of λ in f in; consequently the structure collapses locally near the input node.

  • Distribution of hinges and removed members can be controlled by varying the values of the weights w i , which correspond to the penalty for the generalized strains in problem (9), or the upper bounds for the fully-plastic moments and the yield axial forces in problem (11). If removal of a member is to be avoided, then a large value should be assigned to w i for extension of the member.

  • The mechanism obtained for a symmetric structure subjected to symmetric deformation conditions sometimes turns out to be asymmetric. If a symmetric mechanism is preferred, then the asymmetric mechanism can be easily converted to a symmetric mechanism, as follows, although the degree of kinematical indeterminacy may increase. Let u I and c I = H T u I denote the vectors of nodal displacements and generalized strains of the asymmetric mechanism. The vectors of nodal displacements and generalized strains of the mechanism, which are obtained through a symmetry operation from u I and c I = H T u I, are denoted by u II and c II. Then the pair of (u I + u II)/2 and (c I + c II)/2 represents a mechanism.

In the numerical examples, the following problem is first solved to estimate the range of α for which feasible solutions exist in problem (11):

$$ \max\limits_{\mu, y_{1}, \dots, y_{n}} {\quad} \bar{u}_{\text{in}} \mu $$
(12a)
$$ \mathrm{s.{\,}t.} \sum\limits_{i=1}^{n} y_{i} \boldsymbol{h}_{i} = \mu\boldsymbol{f}_{\text{out}} , $$
(12b)
$$ w_{i} \ge |y_{i}| , \quad i=1,\dots,n , $$
(12c)

where \(\mu \in \mathbb {R}\) is the load factor, which is a variable. Let \((\tilde {\mu },\tilde {\boldsymbol {y}})\) denote the optimal solution of problem (12). Then \(\boldsymbol {y}=(1/\tilde {\mu })\tilde {\boldsymbol {y}}\) and λ in = 0 satisfy the constraint (11b) and (11c) by \(\alpha = 1/\tilde {\mu }\). If \(\alpha > 1/\tilde {\mu }\), then the constraints (11c) are satisfied with strict inequality as α w i >|y i | (i = 1,…,n). Therefore, \(\alpha \ge 1/\tilde {\mu }\) ensures existence of a feasible solution with nonnegative value of λ in.

Note again that the mechanism obtained by solving an LP problem is not always a finite mechanism. Moreover, regularity of ground structure often leads to existence of redundant members. Therefore, in the numerical examples, we obtain finite mechanism using the following algorithm:

  1. 1.

    Define a ground structure that contains all members and joints that can exist.

  2. 2.

    Assign loading condition in accordance with the desired function of the mechanism.

  3. 3.

    Assign appropriate values for w i ; e.g., large values for member extension, and small values for bending and torsion.

  4. 4.

    Solve problem (12) to find the lower bound for α, and assign an appropriate value for α.

  5. 5.

    Solve problem (11) to obtain the locations of hinges and members to be removed to generate an infinitesimal mechanism.

  6. 6.

    Assemble a structural model of an infinitesimal mechanism.

  7. 7.

    Carry out large-deformation analysis for the mechanism. Output the solution and terminate the process if the current solution is found to be a finite mechanism.

  8. 8.

    Update nodal locations in the direction of an inextensional deformation of the infinitesimal mechanism and go to 4.

4 Numerical examples

Various mechanisms are found by solving problem (11) using a primal simplex method of the library SNOPT Ver. 7.2 (Gill et al. 2002). The generalized forces and load factor are obtained as primal variables, and nodal displacements and generalized strains are obtained as dual variables corresponding to equality and inequality constraints of problem (11).

All members of initial ground structures are connected rigidly at joints. Note that the intersecting diagonal members are not connected at their centers. The size of unit square is 1 × 1 for the following examples, where the units are omitted for simple presentation of the results. In the figures of planar mechanisms, a filled square represents a rigid connection and a blank circle represents a rotational hinge along the axis perpendicular to the plane.

To prevent too many members to be removed and to obtain a mechanism dominated by hinge rotations, we set weight w i to a large value 1 for member extension, and to a small value 0.0001 for hinge rotation in Examples I–III of planar mechanisms. The mechanism in Fig. 2 is also obtained by solving problem (11) with these parameter values and α = 0.8.

4.1 Example I

Consider first a simple planar 2 × 2 grid as shown in Fig. 3. A mechanism is obtained so that the output node (B) moves upward as a result of downward displacement of the input node (A). Note that the solution of problem (11) does not change when the directions of input and output displacements are reversed simultaneously.

Fig. 3
figure 3

Model I: Planar 2 × 2 grid

Problem (12) is first solved to estimate the range of α for which problem (11) has a feasible solution. Since the optimal load factor \(\tilde {\mu }\) is 2.415, problem (11a) is feasible if α ≥ 1/2.415 = 0.414. The locations of hinges of the infinitesimal mechanism obtained for 0.414 ≤ α ≤ 0.630 is shown in Fig. 4a, where removed members are not shown. If α ≥ 0.631, then u out turns out to be 0, and the local mechanism as shown in Fig. 4b is obtained. These results confirm that the mechanism obtained by solving problem (11) depends on the value of parameters. However, the solution does not depend strongly on w i for hinge rotation if it is sufficiently small, e.g., we found the same solution as Fig. 3a for w i = 0.001, 0.0001, and 0.00001. Furthermore, only the parameter α should be adjusted when w i for member extension is varied, e.g., the admissible range becomes 0.0414 ≤ α ≤ 0.0630 for w i = 10.0 for member extension.

Fig. 4
figure 4

Locations of hinges of infinitesimal mechanisms of the planar 2 × 2 grid; removed members are not shown: a 0.414 ≤ α ≤ 0.630, b α ≥ 0.631

We assume that possibility of obtaining finite mechanism by solving an LP problem increases as the regularity of the initial ground structure is relaxed. Let u max denote the maximum absolute value among the components of the inextensional deformation u of Fig. 4a. We update the nodal locations by the vector (0.1/u max)u so that the maximum difference in nodal coordinates between the original and updated structure is 0.1. The value of \(\tilde {\mu }\) obtained by solving problem (12) is 2.657, which indicates that problem (11) has a feasible solution if α ≥ 1/2.675 = 0.374. The solution of problem (11) for α = 0.4 is shown in Fig. 5 at the updated nodal locations. Note that this solution is asymmetric with respect to the vertical axis. Locations of hinges of a symmetric solution obtained from the asymmetric mechanism using the procedure described in Section 3.3 is shown in Fig. 6a. An asymmetric solution is often found even for a symmetric problem, because the simplex method searches the extreme points of admissible region sequentially, and one of the optimal solutions is found if the solution is not unique.

Fig. 5
figure 5

An asymmetric mechanisms obtained from updated nodal locations

Fig. 6
figure 6

Symmetric finite mechanism of the 2 × 2 grid; removed members are not shown: a locations of hinges, b inextensional deformation

The mechanism has been confirmed to generate a finite inextensional deformation as shown in Fig. 6b by carrying out large deformation analysis using ABAQUS (Dassault Systèmes Simulia 2013). Note that the nodes of the mechanism in Fig. 6 are located at the original positions in Fig. 3; i.e., the nodal locations are updated in Fig. 5 only to obtain a finite mechanism. No internal force is found even in the large deformation range. Therefore, buckling behavior such as snapthrough and bifurcation need not be considered.

4.2 Example II

Consider next a planar 4 × 4 grid as shown in Fig. 7. A mechanism is obtained so that the output node (B) moves upward as a result of the downward displacement of the input node (A). The values of w i are the same as Example I.

Fig. 7
figure 7

Model II: Planar 4 × 4 grid

Problem (12) is first solved to estimate the range of α for which problem (11) has a feasible solution. Since the optimal load factor \(\tilde {\mu }\) is 2.474, problem (11) is feasible if α ≥ 1/2.474 = 0.404. The locations of hinges of the local infinitesimal mechanism obtained for α = 0.5 are shown in Fig. 8a, where the removed members are not shown.

Fig. 8
figure 8

Locations of hinges of infinitesimal mechanisms of the 4 × 4 grid; removed members are not shown: a local mechanism for α = 0.5, b global mechanism for α = 0.405 and w i = 10000 for members a, b, c, and d

In this example, no global mode could be found even if α is reduced to 0.404. Therefore, we obtain a global mechanism by assigning very large weights w i for members that should not be removed. By assigning w i = 10000 for extension of members a, b, c, and d in Fig. 7, and letting α = 0.405, we obtain a global mechanism as shown in Fig. 8b, which is an infinitesimal mechanism. Therefore, the nodal location is updated in the same manner as Example I. The value of \(\tilde {\mu }\) obtained by solving problem (12a) is 2.584, which indicates that problem (11) has a feasible solution if α ≥ 1/2.584 = 0.387. The solution of problem (11) for α = 0.388 obtained from the updated nodal locations is shown in Fig. 9, which is asymmetric with respect to the vertical axis. Locations of hinges of a symmetric mechanism generated from the mechanism in Fig. 9 are shown in Fig. 10a, where removed members are not shown, and the degree of kinematical indeterminacy is 2. A finite mechanism of single degree of kinematical indeterminacy, to generate the deformation as shown in Fig. 10b, is obtained by constraining the horizontal displacement of the input node A.

Fig. 9
figure 9

Asymmetric mechanism obtained from the updated nodal locations

Fig. 10
figure 10

Symmetric finite mechanism of the 4 × 4 grid; removed members are not shown: a locations of hinges, b inextensional deformation

4.3 Example III

We generate a spatial mechanism from the initial frame as shown in Fig. 11, which is in the XY-plane. The displacements in Y- and Z-directions are fixed at nodes 2 and 4, and displacements in X- and Z-directions are fixed at nodes 3 and 5.

Fig. 11
figure 11

Model III: A 2 × 2 grid in three-dimensional space

The output nodes 6, 7, 8, and 9 move upward as a result of input downward displacement at node 1. For this purpose, problem (11) is solved to obtain the distribution of hinges as shown in Fig. 12a, which is asymmetric and corresponds to a infinitesimal mechanism. Here, we use w i = 10000.0 for member extension and w i = 1.0 for hinge rotation. A smaller value w i = 0.1 is given for torsional hinge, because a finite mechanism cannot be generated for this model without torsional hinge.

Fig. 12
figure 12

Locations of hinges of the 2 × 2 grid in three-dimensional space: a asymmetric mechanism for α = 0.5, b symmetric mechanism generated from the mechanism in (a), c finite mechanism obtained from an updated nodal locations; short thick bar: rotational hinge around y-axis, ‘×’: torsional hinge

A symmetric solution obtained from the solution in Fig. 12a is shown in Fig. 12b, which is still an infinitesimal mechanism. In Fig. 12a, a short thick bar represents a rotational hinge around the bar. The nodal locations are updated in the same manner as Examples I and II, and problem (11) is solved again to obtain the locations of hinges of a finite mechanism as shown in Fig. 12c, where the symbol ‘×’ indicates a torsional hinge. Symmetry conditions are utilized in the same manner as Examples I and II; however, the number of hinges at each corner node has been reduced so that a node has one rotational hinge and one torsional hinge to prevent local instability. Geometrically nonlinear analysis has been carried out for the mechanism in Fig. 12c to confirm that the structure deforms as shown in Fig. 13 without external load. Note that rotations around X- and Y-axes of node 1 are fixed during analysis to prevent local nodal instability and to generate a mechanism with single degree of kinematical indeterminacy.

Fig. 13
figure 13

Finite mechanism of Model III

4.4 Example IV

Finally, we generate a spatial mechanism from the initial grid as shown in Fig. 14, where the size of the grid is 1 in X-, Y, and Z-directions. The displacements in X- and Y-directions are fixed at nodes 1 and 10, displacements in Y- and Z-directions are fixed at nodes 2 and 3, and displacements in X- and Z-directions are fixed at nodes 4 and 5.

Fig. 14
figure 14

Model IV: A three-dimensional grid

The output nodes 6, 7, 8, and 9 move toward node 10 as a result of input downward displacement at node 1. We set w i = 1.0 for bending and torsion. A small value w i = 5.0 is assigned for member extension, because a mechanism cannot be obtained without removing some members. Problem (12) is solved to obtain \(\tilde {\mu }=11.63\), which ensures feasibility of problem (11) for α ≥ 1/11.63 = 0.08598. Problem (11) is solved with α = 0.1 to obtain an infinitesimal mechanism. The nodal locations are updated to the inextensional deformation, and problem (11a) is solved again with α = 0.1 to obtain a finite mechanism, called mechanism 1, as shown in Fig. 15.

Fig. 15
figure 15

Existing members and large deformation of mechanism 1 of Model IV

We next generate a mechanism so that the output node 10 moves upward as a result of input downward displacement at node 1. In this example, only a local mechanism with displacement at the input node could be found, although we tried various values of the parameter α and weights w i . Therefore, a large value 1.0 × 104 is assigned for w i of member extension of each diagonal member connected to the input node, so that they are not eliminated. The weight coefficients for the remaining components are w i = 1.0 for bending and torsion, and w i = 10.0 for member extension. A finite mechanism 2 as shown in Fig. 16 is obtained by carrying out the following procedure:

  1. 1.

    Solve problem (12) to obtain \(\tilde {\mu }\).

  2. 2.

    Solve problem (11) for \(\alpha =1.1/\tilde {\mu }\).

  3. 3.

    Update nodal locations in the direction of an inextensional deformation of mechanism normalized so that the maximum absolute value of displacement is 0.1.

  4. 4.

    Solve problem (12) to obtain \(\tilde {\mu }\).

  5. 5.

    Solve problem (11) for \(\alpha =1.1/\tilde {\mu }\).

    Fig. 16
    figure 16

    Existing members and large deformation of mechanism 2 of Model IV

5 Conclusions

A simple and systematic approach has been presented for designing a spatial link mechanism with partially rigid joints.

A problem to find an infinitesimal mechanism is formulated as an LP problem to maximize the output displacement with a penalty term to obtain a sparse solution including small numbers of hinges and members to be removed. The dual problem of this problem can be regarded as a plastic limit analysis problem based on the lower-bound theorem to maximize the load factor under the equilibrium condition and upper- and lower-bound constraints on the member-end forces.

It has been shown in the numerical examples that the mechanism found as a solution of the LP problem strongly depends on the values of the parameters, namely, the weights for hinge rotation and member extension as well as the penalty parameter for the sum of generalized strains at member ends. In the context of conventional plastic limit analysis problem, the weights multiplied by the penalty parameter are related to the upper bounds for the generalized yield stresses.

If the mechanism obtained by solving the LP problem is not a finite mechanism, the nodal locations are updated in the direction of inextensional deformation, and the LP problem is solved again. It has been shown in the numerical examples that various planar and spatial mechanisms can be easily found using the proposed method.