# An Automated Design Method for Plane Trusses Based on User Preference Information
## 4 Cost Function Based on Modified Physical Programming (MPP)
### Coordination of Multiple Objectives with MPP
\begin{array}{ll}\overline{g}_{i}^{2}+\Delta g_{ 3}\Big{[}\frac{g_{i}(x)-g_{i2}}{g_{3}-g_{i2}}\Big{]}^{2}&g_{i}(x)>g_{i2}\\ \frac{\Delta g_{2}}{g_{2}-g_{i1}}\Big{[}g_{i}(x)-g_{i1}\Big{]}+\overline{g}_{ i}^{1}&g_{i1}\leq g_{i}(x)\leq g_{i2}\\ \overline{g}_{i}^{1}\exp\left\{\frac{\Delta g_{2}}{(g_{2}-g_{i1})\overline{g} _{i}^{1}}\big{[}g_{i}(x)-g_{i1}\big{]}\right\}&.g_{i}(x)<g_{i1}\end{array} \right. \tag{20}\]  
The parameters \(g_{i1}\) to \(g_{i3}\) need to be specified by users, whereas the parameters on the vertical axis are calculated by Equations (12)-(14). For the user preference objective, the expressions of class function are the same as those of the weight and displacement objectives in the D, T, and U ranges, whereas a special expression is used in the UNA range. The boundary values \(g_{i1}\), \(g_{i2}\) and \(g_{i3}\) are determined as 1.5, 2.5, and 3, according to the evaluation options and the rounding rule. The prediction model runs only when all the feature values of the current structure are in the Permissible Feature Range (PFR, defined in Section 3.4) of the training data. Therefore, the class function in the UNA range is constructed based on the differences between the feature values and PFR:  
\[\overline{g}_{i}(x)=\overline{g}_{i}^{3}+\xi+\sum_{j=1}^{N_{f}}v_{j}^{2}\,\ \exists x^{j}\
otin\Big{[}x_{\min}^{j},x_{\max}^{j}\Big{]}, \tag{21}\]  
\[v_{j}=\left\{ \begin{array}{ll}\eta\frac{x^{j}-x_{\max}^{j}}{x_{\max}^{j}-x_ {\min}^{j}}&x^{j}>x_{\max}^{j}\\ 0&,x_{\min}^{j}\leq x^{j}\leq x_{\max}^{j}\\ \eta\frac{x_{\min}^{j}-x^{j}}{x_{\max}^{j}-x_{\min}^{j}}&x^{j}<x_{\min}^{j} \end{array} \right., \tag{22}\]  
Figure 10: Class function for objectives of weight and displacement. where \(N_{f}=\) number of features without redundant features, \(\xi=\) a penalty constant, \(\eta=\) a penalty coefficient, \(x^{j}=\) value of the \(j\)th feature of the current structure, \(x^{j}_{\text{max}}=\) maximum value of the \(j\)th feature of the samples in the training group, and \(x^{j}_{\text{min}}=\) minimum value of the \(j\)th feature of the samples in the training group. Equation (22) calculates the difference between the \(j\)th feature of the current structure and PFR. Then, the result is substituted into Equation (21) to calculate the value of the class function in the UNA range. The parameters \(\xi\) and \(\eta\) generally take large values to penalize the structure when feature values are outside the PFR. The class function of the user preference objective is defined as:  
\[\overline{\delta}_{i}(x)= \begin{cases}\overline{\delta}_{i}^{3}+\xi+\sum \limits_{j=1}^{N_{f}}v_{j}^{2}&,\exists x^{i}\
otin\left[x^{j}_{\text{min}},x^{ j}_{\text{max}}\right]\\ \overline{\delta}_{i}^{2}+\Delta g_{3}\Big{[}\frac{\delta_{i}(x)-g_{2}}{ \delta g_{3}-\delta g_{2}}\Big{]}^{2}&,\quad\delta_{2}<g_{i}(x)\leq g_{i3}\\ \frac{\Delta g_{2}}{\delta g_{2}-\delta g_{1}}[g_{i}(x)-g_{11}]+\overline{ \delta}_{i}^{3}&,\quad\delta_{i1}\leq g_{i}(x)\leq g_{i2}\\ \overline{\delta}_{i}^{1}\exp\left\{\frac{\Delta g_{2}}{(g_{2}-g_{1})\overline {\delta}_{i}^{3}}[g_{i}(x)-g_{11}]\right\}&,\quad g_{i}(x)<g_{i1}\end{cases}  \tag{23}\]  
A simplified form is adopted for the aggregate function:  
\[\text{min}G(x)=\sum\limits_{i=1}^{n_{\text{\tiny{eff}}}}\overline{\delta}_{i} [g_{i}(x)], \tag{24}\]  
subject to  
\[r_{nr}(x)\leq 0, \tag{25}\]  
where \(nr=\) number of constraint functions, and \(r_{nr}(x)=\) the \(nr\)th inequality constraint function. During the original design process of the PP method, if the final design result or the performance of an objective fails to meet the user's needs, the user can improve them by adjusting or resetting the boundary values. However, this manner has some drawbacks. Firstly, the adjusted boundary values may be against the original expectations of the user. Secondly, the boundary values for some objectives are unchangeable. For example, the boundary values for the user preference objective are fixed according to the rounding rule and the evaluation options in the interactive system.