## 2 Coding and Encoding System  
Consider a flat with nj vertices and nw walls to be concreted. The problem involves pouring concrete into all walls moving from vertex to vertex in the shortest time. As previously explained, the difference between one path chosen and another is the amount of time consumed for movements from joint to joint when concrete is not poured. This time is a direct function of the distance traveled. This distance is designated as T, and the focus of this study then becomes the minimization of T.  
Computation of T requires initially ordering the walls in sets and determining from among them the set having a minimal T. This optimization can be performed using various methods. In this study, we chose the Harmony Search (HS) method, which is a metaheuristic algorithm developed by [PERSON] et al. [41]. HS has been applied to many types of science and engineering problems [3; 42; 43; 44], including path optimization [45; 46; 47; 48] and traveling salesman [49; 50; 51; 52; 53] problems. To apply the HS algorithm to the problem considered in this study, we used a special decoding and encoding technique, namely, an enhanced version of the technique used by [PERSON] et al. [51]. A special computer program was prepared for this application using a recent version of the coding language QB64 (v1.3, 2019). QB64 is a completely enhanced form of the language QuickBasic. The computations were conducted on a personal computer with an Intel(R) Core(TM) i7-5500U CPU @ 2.40 GHz. The technique is explained as follows. Consider the problem with nj joints and nw walls in which Wall i is defined by two vertices v\({}_{\text{is}}\) and v\({}_{\text{ie}}\), that is, start and end joints, respectively. A simple example is presented in Figure 1a, where nj and nw are both 5. The coordinates of the vertices are (0,0), (4,0), (0,3), (4,3), and (8,3), that is, from 1 to 5, respectively. Table 1 explains the encoding scheme for this problem. To determine a path, random numbers between \(-1\) and 1 are assigned to each nw-1 wall r\({}_{\text{i}}\), i = 2, 3,..., nw, as shown in Row a of Table 1 for three candidate paths. It is assumed in all applications that the starting vertex is the first one, and concreting begins with Wall 1 from Joints 1 to 2. Therefore, the number assigned to the first wall is always zero. Absolute values of these numbers, as shown in Row b, are then placed in order from lowest to highest, as shown in Row c. This becomes the order of operation for concreting the walls, as shown in Row d. Signs of the original random numbers indicate the direction in which the concreting will be executed. If the sign is positive, then the movement over the wall is positive (i.e., from starting vertex to end vertex). If the sign is negative, then the movement is in the opposite direction. In Table 1, the order of execution of walls is shown in Row e.  
The movements of the nozzle for the three candidates listed in Table 1 are shown in Figure 1b-d, respectively. In these figures, the starting point is marked with a star. The continuous lines in this figure indicate the concrete pouring actions, and the dashed lines denote the movements from one joint to another when no concrete is poured (i.e., idle movements that give the T value of the path). \begin{table}
\begin{tabular}{l l c c c c c c c c c c c c c} \hline \hline \multirow{2}{*}{**Row. **} & \multirow{2}{*}{**Wall**} & \multicolumn{5}{c}{**Candidate 1**} & \multicolumn{5}{c}{**Candidate 2**} & \multicolumn{5}{c}{**Candidate 3**} \\ \cline{3-14}  & & **1** & **2** & **3** & **4** & **5** & **1** & **2** & **3** & **4** & **5** & **1** & **2** & **3** & **4** & **5** \\ \hline a & Random Numbers & 0 & \(-\)0.62 & \(-\)0.42 & \(-\)0.73 & 0.32 & 0 & \(-\)0.66 & 0.88 & 0.42 & \(-\)0.92 & 0 & 0.0 Two types of nozzle movements are considered in this study. In the first approach, the nozzle moves parallel only to the x or y directions (i.e., in a rectangular manner); in the other, the nozzle can move from one joint to another following the shortest path (i.e., diagonally).