## 3 Program Development
The administrator can adjust the data ranges and weight values according to the actual situation. The adjusted data are saved to the text in binary form and can be recalled next time. After all the information input is completed, all the parameters are calculated and classified according to subclasses. The BEES provides dialogs for users to observe the evaluation of each parameter (see Figure 4). According to all the parameter evaluation results, the blasting effect evaluation can be obtained--the algorithm is shown in Figure 5--and the blasting effect evaluation results are displayed by the form of a graph (They can be seen in the next two figures, Figures 6 and 7). \begin{table}
\begin{tabular}{c c c} \hline \hline
**Subclass** & **Weight Value** & **Parameter** & **Weight Value** \\ \hline \multirow{2}{*}{Blasting safety} & \multirow{2}{*}{0.3} & Fly-rock & 0.35 \\  & & Vibration & 0.65 \\ \hline \multirow{4}{*}{Blasting quality} & \multirow{4}{*}{0.4} & Boulder yield & 0.5 \\  & & Muck pile height & 0.07 \\  & & Forward distance & 0.12 \\  & & Back break & 0.11 \\  & & Lateral groove depth & 0.06 \\  & & Bench smoothness & 0.14 \\ \hline \hline \multirow{2}{*}{Blasting cost} & \multirow{2}{*}{0.3} & Explosive unit consumption & 0.48 \\  & & Blasted volume per meter & 0.31 \\ \multicolumn{4}{c}{Auxiliary materials} & 0.21 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Weight values of parameters. \begin{table}
\begin{tabular}{l c c c c c c c} \hline \hline
**Parameter** & **Blank** & **Very Poor** & **Poor** & **Fair** & **Good** & **Very Good** & **Excellent** \\ \hline Fly-rock (m) & \textgreater{}200 & 165–200 & 125–165 & 85–125 & 45–85 & 5–45 & \textless{}5 \\ Vibration (cm/s) & \textgreater{}5.0 & 3.5–5.0 & 2.5–3.5 & 2.0–2.5 & 1.0–2.0 & 0.5–1.0 & \textless{}0.5 \\ Boulder yield & \textgreater{}9\% & 6\%–9\% & 4\%–6\% & 2\%–4\% & 1\%–2\% & 0.5\%–1\% & \textless{}0.5\% \\ Muck pile height (m) & \textgreater{}3.00 & 2.40–30.0 & 1.80–240 & 1.20–180 & 0.60–120 & 0.20–0.60 & \textless{}0.20 \\ Forward distance (m) & \textgreater{}25.0 & 21.0–25.0 & 17.0–21.0 & 13.0–17.0 & 9.0–13.0 & 5.0–9.0 & \textless{}5.0 \\ Back break (m) & \textgreater{}3.0 & 2.6–3.0 & 2.2–2.6 & 1.8–2.2 & 1.4–1.8 & 1.0–1.4 & \textless{}1.0 \\ Lateral groove depth (m) & \textgreater{}3.0 & 2.6–3.0 & 2.2–2.6 & 1.8–2.2 & 1.4–1.8 & 1.0–1.4 & \textless{}1.0 \\ Bench smoothness (cm) & \textgreater{}40 & 32.0–40.0 & 25.0–32.0 & 17.0–25.0 & 10.0–17.0 & 2.0–10.0 & \textless{}2.0 \\ Unit explosive consumption (kg/m\({}^{3}\)) & \textgreater{}1.8 & 1.50–1.8 & 1.20–15.0 & 0.9–1.20 & 0.6–0.9 & 0.30–0.6 & \textless{}0.30 \\ Blasted volume per meter (m) & \textless{}30 & 30.0–36.0 & 36.0–42.0 & 42.0–48.0 & 48.0–54.0 & 54.0–60.0 & \textless{}60.0 \\ Auxiliary materials (thousand) & \textgreater{}180 & 140–180 & 100–140 & 70–100 & 50–70 & 40–50 & \textless{}40 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: The default data ranges of parameters in BEES. 1.Calculate the boulder yield by setting the calibration value. 2.Calculate data ranges of vibration by Sadovsky equation corresponding to membership. 3.Determine the data ranges of all parameters corresponding to memberships(can also be modified by users). 4.Record all the parameters values \(N\):  
(1)Loop over \(N\):  
i. Check Ni inside the data ranges according to membership degrees;  
ii. Return membership \(Z\):  
(2)End loop  
5.Calculate the subclasses of blasting effect evaluation (blasting safety, quality and cost), by equation(1). 6.Calculate the comprehensive blasting effect evaluation by equation(2). Figure 4: The evaluation result of each index. Figure 5: The algorithm of blasting effect evaluation.