## 5 Case Study and Discussion
### Decision-Support System  
In reality, a decision-maker may prefer one objective to another. The AHP method discussed earlier can be implemented to obtain criteria weights based on preferences from the decision-maker. A Visual Basic for Applications (VBA)-based interactive input-output system was developed in Microsoft Excel to aid practitioners not familiar with the mathematical notations, as shown in Figure 3. The developed model-driven DSS can be used to access and manipulate the integrative AHP and multi-objective optimization model, as well as assist decision-makers in planning the production and distribution for a network of AM printers. The embedded macro VBA coding and AHP input sheet, in which a decision-maker makes the pairwise comparisons among the criteria to obtain the criteria weights, is shown in Figure 3a,b, respectively. The AHP-based criteria weights, shown in cells H22:H25 in Figure 3b, were linked to the objective weights in cells F3:F6 in Figure 3c. The input sheet of the developed MILP, which allows a decision-maker to specify the parts to be printed and distributed, as well as the parameters related to the different requirements of the acquired AM printers, are illustrated in Figure 3c. Once \"Run Program\" is clicked, the underlining model analyzes the data and presents outputs, as shown in Figure 3d; the objective functions are shown in cells E3:E6. Additionally, the variables relevant to the part-to-printer assignment, part distribution, and load balance for each printer are presented.  
With an emphasis on the total unassigned parts' objective function (i.e., criteria weights were 0.13 for the total cost, 0.08 for the load balance, 0.08 for the total lateness, and 0.71 for the total unassigned parts), the total number of unassigned parts decreased when compared with the outputs from the  
\begin{table}
\begin{tabular}{c c c c c c} \hline \hline
**Desired Criteria** & \(Z_{1}\) & \(Z_{2}\) & \(Z_{3}\) & \(Z_{4}\) & **Multi-Objective** \\ \hline Solve time (s) & 0.141 & 0.062 & 0.547 & 0.062 & 0.483 \\ \hline \multirow{2}{*}{Auspended printers} & ME1 & ME1, ME2 & ME1, ME2 & ME1, ME2 & ME1, ME2 \\  & SL1 & SL1, SL2 & SLE1 & SL2 & SL1, ME2 \\  & SL1 & SL1, SL2 & SLE1 & SL1 & SL1 \\ \hline \multirow{5}{*}{Auspended prints} & ME1 (A2, S, 10) & ME1 (A2, S, 10) & ME1 (A2, S, 10) & ME1 (A2, S, 10) \\  & ME1 (A2, S, 10) & ME1 (A3, S, 10) & ME2 (A3, S, 10) & ME2 (A3, S, 10) \\  & ME1 (A2, S, 10) & ME2 (A3, S, 10) & ME2 (A3, S, 10) & ME2 (A3, S, 10) \\  & SL1 (A4, S, 10) & SLE2 (A3, S, 10) & ME2 (A3, S, 10) & ME2 (A3, S, 10) \\  & SL1 (A4, S, 10) & SLE2 (A3, S, 10) & ME2 (A3, S, 10) & ME2 (A3, S, 10) \\  & SL1 (A4, S, 10) & SLE2 (A3, S, 10) & ME2 (A3, S, 10) & ME2 (A3, S, 10) \\ \hline \multirow{5}{*}{Part shipment} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\ \hline \multirow{5}{*}{Total operating} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} & \multirow{5}{*}{From 2 (A2, S, 10, 10)} & \multirow{5}{*}{From 2 (A3, S, 10, 10)} & \multirow{5}{*}{From 2 (A3, S, 10, 10)} \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\  & & & & & \\ \hline \multirow{5}{*}{Load balance} & ME1 (A2, S, 10) & ME1 (A2, S, 10) & ME1 (A2, S, 10) & ME1 (A2, S, 10) & ME1 (S, 10) \\  & SL2 (A3, S, 10) & ME2 (S, 10) & ME2 (S, 10) & ME2 (S, 10) \\  & SL1 (A2, S, 10) & SL1 (A2, S, 10) & SL1 (A2, S, 10) & SL2 (A3, S, 10) \\  & SL1 (A2, S, 10) & SL1 (equal-weight solution (i.e., criteria weights were 0.25 for the total cost, 0.25 for the load balance, 0.25 for the total lateness, and 0.25 for the total unassigned parts). As expected, this was due to there being trade-offs with other objective functions.