## 2 Problem Formulation
### Objective Function with the Effect of Eliminating De Facto Hinges  
Figure 2 shows the design domain \(D\) and boundary conditions of a typical MIMO compliant mechanism, in which each input load is responsible for actuating a specific output displacement, i.e., the desired output displacement \(u_{OI}\) at the \(i\)th output port \(Oi\) should be generated by applying an input force \(F_{li}\) at the corresponding input port \(li\) (\(i=1,2,\,\ldots,\,n\)). In this work, the output displacement \(u_{Oi}\) produced by \(F_{ii}\) is calculated by using the concept of the mutual mean compliance as follows:  
\[u_{OI}=\mathbf{V}_{OI}^{\mathrm{T}}K\mathbf{U}_{li} \tag{3}\]  
where \(\mathbf{U}_{li}\) is the displacement vector associated with the input force \(F_{li}\), and \(\mathbf{V}_{OI}\) is the displacement vector due to a virtual unit load \(f_{Oi}\) that is applied at the output point \(Oi\) and has the same direction with \(u_{OI}\) (see Figure 2). The core design objective of compliant mechanisms is to maximize the desired output displacements, and it could be formulated as: Minimize \(-u_{OI}\) (\(i=1,2,\,\ldots,\,n\)). This multi-objective formulation could be transformed into the following single-objective one via the weighted sum method:  
\[\mathrm{Minimize}:J=-\sum_{i=1}^{n}\omega_{i}u_{OI} \tag{4}\]  
in which \(\omega_{i}\) is the weighting factor of \(u_{OI}\) and is updated with iterations using  
\[\omega_{i}^{iter}=\left\{ \begin{array}{ll}1&i=1\,\mathrm{or}\,\,iter=1\\ \left|\frac{u_{OI}^{iter-1}}{u_{OI}^{iter-1}}\right|&i\geq 1\,\,\mathrm{and}\,\, iter\geq 2\end{array} \right. \tag{5}\]  
where superscripts \(iter\) and \(iter-1\) denote \(iter\)th and \((iter-1)\)th iteration, respectively. It should be noted that de facto hinges are very likely to appear in design results if the objective function only involves output displacements, as shown in Equation (4). In order to eliminate de facto hinges naturally, the present optimization work is dedicated to striking a good balance between structural flexibility and stiffness. The stiffness  
Figure 2: Design domain and boundary conditions of a MIMO compliant mechanism. of compliant mechanisms could be measured by the input compliance \(C_{li}\) and the output compliance \(C_{OI}\) defined as  
\[C_{li}=\mathbf{V}_{li}^{T}\mathbf{K}\mathbf{V}_{li} \tag{6}\]  
\[C_{OI}=\mathbf{V}_{OI}^{T}\mathbf{K}\mathbf{V}_{OI} \tag{7}\]  
where \(\mathbf{V}_{li}\) is the displacement vector due to a virtual unit load \(f_{li}\) with the same input point and direction as \(F_{li}\). The smaller the compliance is, the larger the mechanism stiffness is. After the introduction of input and output compliances (\(C_{li}\) and \(C_{OI}\)) computed by Equations (6) and (7) into the objective function (4), the new formulation based on the weighted sums of the flexibility and stiffness is developed as  
\[\text{Minimize}:J=-\sum_{i=1}^{n}\omega_{i}u_{OI}+\sum_{i=1}^{n}w_{II}C_{li}+ \sum_{i=1}^{n}w_{OI}C_{OI} \tag{8}\]  
in which \(w_{li}\) and \(w_{OI}\) are the weighting factors of \(C_{li}\) and \(C_{OI}\), respectively. Similar to the factor \(\omega_{i}\), both the \(w_{li}\) and \(w_{OI}\) change with iterations adaptively as follows:  
\[w_{li}^{iter}=\left\{ \begin{array}{ll}1&i=1,\,iter=1\\ \left|\frac{w_{OI}^{iter-1}}{C_{li}^{iter-1}}\right|&i\geq 2,\,iter\geq 2 \end{array} \right. \tag{9}\]  
\[w_{OI}^{iter}=\left\{ \begin{array}{ll}1&i=1,\,iter=1\\ \left|\frac{w_{OI}^{iter-1}}{C_{OI}^{iter-1}}\right|&i\geq 2,\,iter\geq 2 \end{array} \right. \tag{10}\]  
The reason for adopting these weighting factors \(\omega_{i}\), \(w_{li}\) and \(w_{OI}\) is that values of weighted quantities \(u_{OI}\), \(C_{li}\) and \(C_{OI}\) vary widely and always differ by orders of magnitude. The reason for adaptively adjusting them using Equations (5), (9) and (10) is that it can prevent some of these quantities from becoming insanely large.