## 4 Evaluation
### Experimental Results  
This subsection presents the results of the proposed predictor, which will also be compared with other existing prediction methods. The aim is to compare both the capacity of learning the entire dataset and the capacity to adapt to new assembly scenarios. Three metrics have been chosen to evaluate the performance of the prediction algorithms: prediction rate, accuracy and coverage. The prediction rate measures how many times the algorithm was able to make a prediction. The prediction rate is computed in relation to the size of the testing dataset. The accuracy measures how many of the predictions made were correct and the coverage considers the correct predictions in relation to the whole testing dataset. In the tables presented below, for each metric there are two columns \"100/100\" and \"75/25\". These two columns refer to how the algorithms were evaluated: \"100/100\" indicates that both the training and testing datasets were generated using 100% of the dataset, while \"75/25\" means that 75% of the dataset was used on the training of the model and the rest of 25% was considered for testing. Table 2 presents the three metrics for the PPM algorithm of orders 1 to 7, on the \"Trainees\" dataset. The prediction rate remains constant throughout the orders for both testing methods. For the \"100/100\" testing method, the accuracy and coverage increase in small amounts up to order 3, where maximum percentages are achieved. Due to higher orders, the sequence can be more tailored to the worker, thus an increase of the accuracy and coverage can be observed. For new data, it seems that the metrics remain constant throughout all the orders. \begin{table}
\begin{tabular}{c c c c c c} \hline \hline
**PPM** & **Prediction Rate (\%)** & **Accuracy (\%)** & **Coverage (\%)** \\ \cline{2-6}
**Order** & **100/100** & **75/25** & **100/100** & **75/25** & **100/100** & **75/25** \\ \hline
1 & 95.62 & 54.46 & 80.05 & 61.82 & 76.55 & 33.66 \\
2 & 95.62 & 54.46 & 82.21 & 61.82 & 78.61 & 33.66 \\
3 & 95.62 & 54.46 & 82.48 & 61.82 & 78.87 & 33.66 \\
4 & 95.62 & 54.46 & 82.48 & 61.82 & 78.87 & 33.66 \\
5 & 95.62 & 54.46 & 82.48 & 61.82 & 78.87 & 33.66 \\
6 & 95.62 & 54.46 & 82.48 & 61.82 & 78.87 & 33.66 \\
7 & 95.62 & 54.46 & 82.48 & 61.82 & 78.87 & 33.66 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Evaluation of the PPM algorithm on the “Trainees” dataset. As presented in Section 3.2, the PPM predictor was improved by enabling it to search in all the neighboring states (when it is necessary) for a possible assembly. The PPM with neighboring is further denoted PPMN. Table 3 presents the results of the PPMN on the \"Trainees\" dataset. On known data (with the \"100/100\" testing method), a small increase can be observed in terms of coverage, a 2% increase in the prediction rate, while the accuracy was slightly lower than that of the PPM without neighboring states. When it comes to new data (\"75/25\" testing method), the coverage increased by over 10% compared to the PPM without neighboring search and the prediction rate by over 20%. Although there is a slightly lower accuracy, the use of this enhanced algorithm is preferred. After evaluating the two implementations of the PPM algorithm, with and without neighboring states, it can be observed that the optimal order for both algorithms is 3. The optimal configurations of these two algorithms will now be compared with two prediction methods presented and evaluated in previous works: the Markov model with padding [7], enhanced to use human characteristics, and the LSTM [8]. For the Markov model with padding, the optimal order is 2. The comparisons are presented on both the \"Trainees\" and \"Workers\" datasets. Both the capacity to learn and to adapt to new challenges will be measured. Figure 6 compares the PPM and PPMN methods with the other existing methods in terms of prediction rate. The LSTM network has a very high prediction rate in most of the cases, whereas the PPMN has the top prediction on the \"Trainees\" dataset with the \"100/100\" testing method.