## 3 Methodology
### MLP Network Model Implementation Process  
MATLAB is a distinctive programming language with a multi-exemplar numerical computing environment and a user interface. It provides easy matrix manipulation, graphical multi-domain simulation, figurative computing, creative functions plotting, excellent data mining, easy algorithms implementation, etc. MATLAB allows access to optional toolbox uses. The neural network toolbox has special tools for model-based design, implementation, visualization and simulation of neural networks. MATLAB is employed to encode the script files for the MLP network model predictive training, testing and quantitative evaluation in this work. The program code for conventional path loss calculation and assessment is also explored. The proposed MLP neural model consists of five input nodes and one output node. Flowchart for executing proposed predictive modelling with ANN while training and testing are shown in Figure 4.  
As mentioned earlier, for practical and optimal application of MLP network for predictive modelling purposes, the right choice of the learning algorithm, and selection of the network processing elements such as the number of neurons, number of network layers and transfer functions, are crucial. For example, a network with insufficient neurons number in a hidden layer may fail to capture complex links between target output and input variables. Conversely, if the number of neurons allotted in the network hidden layer is too many, the network would likely follow the latent noise in the dataset owing to over-parameterization, and this, in turn, can lead to awkward generalization and poor predictive modelling of the original data [63, 64]. Therefore, the determination of the hidden layers number and their number of neurons is performed by trial and random selection. However, for conciseness and the need to attain optimal neural network training and testing, the search for the required number of neurons and hidden layers in the network layers were narrowed down to 2-50 and 1-3, respectively.  
Generally, if a particular algorithm performs well during the dataset training but flops in the aspect of generalization, we refer to it as overfitting. To improve generalization (or prevent overfitting) during the path loss data training with each of the NN algorithms, we employed input/target transformations and early stopping techniques. Thus, the inputs and targets datasets were scaled to reside in the range [\(-\)1, 1] to enhance training and testing speed. Moreover, the early stopping measures were engaged for training and testing to avoid overtraining, eliminate contemptuous impact stimulated by the initial values, and develop robust adaptive predictive ability. Although many learning algorithms are available for MLP neural network training and testing in MATLAB software, it is demanding to identify which algorithm works best for a given predictive modelling problem concerning convergence speed and accuracy [16]. Therefore, an exhaustive search is employed in this study to accelerate the convergence and evaluate the impact of all the available learning algorithms during network training. The respective learning algorithms assessed to develop an optimal MLP network predictive model and their weight adaptation techniques are listed in Table 2. The target of the weight adaptation is to determine the optimum weight update for the input-output data array pair during training.  
Figure 4: Flowchart for the execution of Proposed Predictive Modelling with MLP Neural Network.