## 4 Experimental Results
### Effect of Cooperating with Effective-Address
regard to the efficacy of the algorithm that can be noted in Figures 4b and 7b for all other threads (\(H8\), \(H16\), \(H32\), and \(H40\)), there is no defined behavior. For example, the efficacy as a function of the number of threads for YN1 (Figure 4b) in increasing order is \(H40\), \(H8\), \(H16\), \(H32\), \(H48\). Efficacy as a function of the number of threads for YN2 (Figure 5b) in increasing order is \(H8\), \(H16\), \(H32\), \(H40\), \(H48\). Efficacy as a function of the number of threads and YN3 (Figure 6b) in increasing order is \(H8\), \(H16\), \(H32\), \(H48\), \(H40\). Efficacy as a function of the number of threads for YN4 (Figure 7b) in increasing order is \(H40\), \(H16\), \(H8\), \(H32\), \(H48\). It can be seen that the efficacy of the algorithm SACT based on the number of threads, depends on the problem to solve. However, it can be observed that for all problems YN, generally with 48 threads, the efficacy of SACT is better in almost all YN; the average efficacy is better using 48 threads (\(H48\)). Figures 4b, 5b, 6b and 7b show that the worst behavior occurs when SACT is executed in a single thread sequence (\(H1\)) where cooperation with the _effective-address_ procedure is with the only thread that exists (\(H1\)). It is noted that approximately from iteration = 100 SA, the efficiency decreases considerably for finding a good makespan when \(H8\) is compared to \(H48\). This behavior occurs for the four problems YN. The opposite happens when there is cooperation thread (\(H8\) to \(H48\)). Efficacy increases on average from Figures 4b, 5b, 6b and 7b, by about 10 units from iteration 250 to 2500 SA. This makes these makespan results better than those found by \(H1\). For example, in YN1 of Figure 4b, in iteration 500 SA, the best average makespan when there is cooperation (\(H32\)) is close to 898. When there is no cooperation (\(H1\)), the makespan is about 909. In the iteration 2500 SA, the average makespan when there is cooperation (\(H48\)) is close to 894 and when there is no cooperation (\(H1\)), the makespan is close to 906. Figures 4a, 5a, 6a and 7a show that the worst performances are when SACT is executed in a single thread sequence (\(H1\)), where cooperation does not use the _effective-address_ procedure. When the only thread that exists is (\(H1\)), the best solution is taken from the previous SA (\(S_{H1}=S_{H1\_c}\)). It is noted that approximately at the beginning (before Maxiter = 50 SA), the efficacy of \(H1\) is better. Then this efficacy decreases considerably. This behavior occurs in all four YN problems. The opposite happens when there is cooperation thread (\(H8\) to \(H48\)). The efficacy of cooperation increases as the number of iterations increases of 250-500 SA, as shown by better results for the makespan as compared to that found by \(H1\). For example, in YN1, Figure 4a, at iteration 500 SA, the average makespan when there is cooperation (\(H8\)) is close to 902 and when there is no cooperation (\(H1\)), the makespan is about 908. In iteration 2000 SA, the average makespan when there is cooperation (\(H40\)) is close to 896 and when there is no cooperation (\(H1\)), the makespan is near 906. Figure 4: YN1-20 \(\times\) 20. Performance of cooperation with different numbers of threads. Average of 30 tests. (**a**) Without _effective-address_. (**b**) With _effective-address_. Figure 5: YN2-20 \(\times\) 20. Performance of cooperation with different numbers of threads. Average of 30 tests. (**a**) Without _effective-address_. (**b**) With _effective-address_. An interesting point related to the efficacy of the SACT algorithm is that when there is cooperation but no _effective-address_ there is no defined behavior for different threads in execution, as seen in Figures 4a, 5a, 6a and 7a. Table 2 summarizes the efficacy of SACT with cooperation and without _effective-address_ for YN problems in descending order. It can be observed that the efficacy of the algorithm SACT as a function of the number of threads depends on the problem being resolved.