<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.2 20190208//EN" "http://jats.nlm.nih.gov/publishing/1.2/JATS-journalpublishing1.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" dtd-version="1.2" xml:lang="en">
    <front>
        <journal-meta>
            <journal-id journal-id-type="pmc">F1000Research</journal-id>
            <journal-title-group>
                <journal-title>F1000Research</journal-title>
            </journal-title-group>
            <issn pub-type="epub">2046-1402</issn>
            <publisher>
                <publisher-name>F1000 Research Limited</publisher-name>
                <publisher-loc>London, UK</publisher-loc>
            </publisher>
        </journal-meta>
        <article-meta>
            <article-id pub-id-type="doi">10.12688/f1000research.167794.1</article-id>
            <article-categories>
                <subj-group subj-group-type="heading">
                    <subject>Research Article</subject>
                </subj-group>
                <subj-group>
                    <subject>Articles</subject>
                </subj-group>
            </article-categories>
            <title-group>
                <article-title>An Enhanced Jaya Algorithm with Mutation and&#x00a0;Diversity-Preserving Strategies for Hyperspectral Band Selection</article-title>
                <fn-group content-type="pub-status">
                    <fn>
                        <p>[version 1; peer review: 2 approved]</p>
                    </fn>
                </fn-group>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Behera</surname>
                        <given-names>Suchismita</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Data Curation</role>
                    <role content-type="http://credit.niso.org/">Formal Analysis</role>
                    <role content-type="http://credit.niso.org/">Funding Acquisition</role>
                    <role content-type="http://credit.niso.org/">Investigation</role>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Project Administration</role>
                    <role content-type="http://credit.niso.org/">Resources</role>
                    <role content-type="http://credit.niso.org/">Software</role>
                    <role content-type="http://credit.niso.org/">Validation</role>
                    <role content-type="http://credit.niso.org/">Visualization</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Original Draft Preparation</role>
                    <xref ref-type="aff" rid="a1">1</xref>
                </contrib>
                <contrib contrib-type="author" corresp="yes">
                    <name>
                        <surname>Sarangi</surname>
                        <given-names>Partha Pratim</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Data Curation</role>
                    <role content-type="http://credit.niso.org/">Formal Analysis</role>
                    <role content-type="http://credit.niso.org/">Funding Acquisition</role>
                    <role content-type="http://credit.niso.org/">Investigation</role>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Project Administration</role>
                    <role content-type="http://credit.niso.org/">Resources</role>
                    <role content-type="http://credit.niso.org/">Software</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Validation</role>
                    <role content-type="http://credit.niso.org/">Visualization</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <uri content-type="orcid">https://orcid.org/0000-0002-5628-997X</uri>
                    <xref ref-type="corresp" rid="c1">a</xref>
                    <xref ref-type="aff" rid="a2">2</xref>
                </contrib>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Mishra</surname>
                        <given-names>Bhabani Shankar Prasad</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Project Administration</role>
                    <role content-type="http://credit.niso.org/">Resources</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Validation</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <xref ref-type="aff" rid="a3">3</xref>
                </contrib>
                <aff id="a1">
                    <label>1</label>School of Computer Engineering, Kalinga Institute of Industrial Technology, Bhubaneswar, Odisha, 751024, India</aff>
                <aff id="a2">
                    <label>2</label>School of Computer Engineering, Kalinga Institute of Industrial Technology, Bhubaneswar, Odisha, 751024, India</aff>
                <aff id="a3">
                    <label>3</label>School of Computer Engineering, Kalinga Institute of Industrial Technology, Bhubaneswar, Odisha, 751024, India</aff>
            </contrib-group>
            <author-notes>
                <corresp id="c1">
                    <label>a</label>
                    <email xlink:href="mailto:pp.sarangifcs@kiit.ac.in">pp.sarangifcs@kiit.ac.in</email>
                </corresp>
                <fn fn-type="conflict">
                    <p>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>29</day>
                <month>9</month>
                <year>2025</year>
            </pub-date>
            <pub-date pub-type="collection">
                <year>2025</year>
            </pub-date>
            <volume>14</volume>
            <elocation-id>999</elocation-id>
            <history>
                <date date-type="accepted">
                    <day>16</day>
                    <month>9</month>
                    <year>2025</year>
                </date>
            </history>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2025 Behera S et al.</copyright-statement>
                <copyright-year>2025</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access article distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <self-uri content-type="pdf" xlink:href="https://f1000research.com/articles/14-999/pdf"/>
            <abstract>
                <p>Hyperspectral band selection has become a key focus in hyperspectral image processing as it reduces the spectral redundancy and computational overhead, thereby improving classification performance. However, optimal band selection remains challenging due to its combinatorial nature. Although numerous metaheuristic algorithms have been introduced in recent years to address this problem, achieving an effective balance between exploration and exploitation continues to pose a major challenge. This paper proposes a novel approach that combines a parameter-free binary Jaya algorithm with a mutation operator to enhance exploration and maintain solution diversity within the search space. We employ Opposition-based Leaning (OBL) for population initialization and Quasi-Reflection reinitialization strategy to add diversity whenever fitness stagnation occurs. To simultaneously improve classification performance and band reduction we adopt weighted sum multi-objective fitness function that minimizes redundancy and enhances model generalization. Our proposed method is evaluated using three benchmark datasets, namely Indian Pines, Pavia University, and Salinas. Experimental results demonstrate that the pro-posed method outperforms recent metaheuristic-based band selection techniques. Its superior performance makes it well suited for various HSI applications.</p>
            </abstract>
            <kwd-group kwd-group-type="author">
                <kwd>Band selection</kwd>
                <kwd>binary Jaya algorithm</kwd>
                <kwd>mutation  operator</kwd>
                <kwd>hyperspectral image classification.</kwd>
            </kwd-group>
            <funding-group>
                <award-group id="fund-1" xlink:href="https://doi.org/10.13039/501100020612">
                    <funding-source>Kalinga Institute of Industrial Technology</funding-source>
                </award-group>
                <funding-statement>This research was supported by the Kalinga Institute of Industrial Technology, Bhubaneswar (KIIT-DU/309/25). The funding institution had no involvement in the study design, data acquisition and analysis, publication decisions, or the writing of the manuscript. </funding-statement>
                <funding-statement>
                    <italic>The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.</italic>
                </funding-statement>
            </funding-group>
        </article-meta>
    </front>
    <body>
        <sec id="sec1" sec-type="intro">
            <title>Introduction</title>
            <p>Hyperspectral imaging (HSI) collects detailed spectral data across hundreds of continuous, narrow wavelength bands, providing significant potential for applications like agriculture, remote sensing, and environmental monitoring.
                <sup>
                    <xref ref-type="bibr" rid="ref1">1</xref>
                </sup> Despite their rich spectral information, hyperspectral images come with high dimensionality, which introduces several challenges&#x2014;ranging from increased computational load to the inclusion of redundant, irrelevant data and unwanted noise. Band selection
                <sup>
                    <xref ref-type="bibr" rid="ref2">2</xref>
                </sup> is a widely utilized dimensionality reduction technique
                <sup>
                    <xref ref-type="bibr" rid="ref3">3</xref>
                </sup> which tackles these challenges by choosing a subset of the most informative spectral bands, thereby enhancing computational efficiency and boosting classification accuracy.
                <sup>
                    <xref ref-type="bibr" rid="ref4">4</xref>
                </sup>
            </p>
            <p>In the past few decades, band selection in hyperspectral imaging has gained significant attention due to the need to reduce the high-dimensional nature of the data while preserving critical information. Conventional techniques
                <sup>
                    <xref ref-type="bibr" rid="ref5">5</xref>
                </sup> often find it difficult to navigate the vast and complex search space, where the most informative bands are dispersed irregularly and are not grouped in a continuous manner. Machine learning approaches: such as Random Forests (RF),
                <sup>
                    <xref ref-type="bibr" rid="ref6">6</xref>
                </sup> Support Vector Machines (SVM),
                <sup>
                    <xref ref-type="bibr" rid="ref7">7</xref>
                </sup> and unsupervised techniques like Principal Component Analysis (PCA),
                <sup>
                    <xref ref-type="bibr" rid="ref8">8</xref>
                </sup> utilize underlying data patterns to carry out both feature selection and classification concurrently. These data-driven techniques are highly adaptable but often necessitate preprocessing steps, such as band selection, to handle high-dimensional spaces effectively. To address this, various metaheuristic algorithms
                <sup>
                    <xref ref-type="bibr" rid="ref9">9</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref11">11</xref>
                </sup> have been proposed as effective alternatives for identifying the most informative bands. These algorithms, provide robust solutions by navigating the complex optimization landscape, ensuring efficient and accurate band selection for a wide range of hyperspectral applications. To achieve optimal band selection, a combination of metaheuristic algorithms
                <sup>
                    <xref ref-type="bibr" rid="ref12">12</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref16">16</xref>
                </sup> and machine learning methods
                <sup>
                    <xref ref-type="bibr" rid="ref17">17</xref>
                </sup> has been extensively investigated. Metaheuristic algorithms,
                <sup>
                    <xref ref-type="bibr" rid="ref18">18</xref>
                </sup> such as Genetic Algorithms (GA)
                <sup>
                    <xref ref-type="bibr" rid="ref9">9</xref>,
                    <xref ref-type="bibr" rid="ref19">19</xref>
                </sup> models&#x2019; genetic inheritance, passing advantageous traits to subsequent generations of solutions, Particle Swarm Opti-mization (PSO)
                <sup>
                    <xref ref-type="bibr" rid="ref10">10</xref>,
                    <xref ref-type="bibr" rid="ref20">20</xref>
                </sup> operates on swarm intelligence principles, replicating the movements of bird flocks or fish schools, and Grey Wolf Optimization (GWO)
                <sup>
                    <xref ref-type="bibr" rid="ref11">11</xref>,
                    <xref ref-type="bibr" rid="ref21">21</xref>
                </sup> takes inspiration from the natural leadership structure and cooperative hunting strategies of grey wolves. Because it can effectively search through wide and complex solution spaces, it proves to be especially useful for finding the most suitable set of spectral bands. These methods excel at balancing exploration (identifying novel solutions) and exploitation (refining known effective solutions)
                <sup>
                    <xref ref-type="bibr" rid="ref22">22</xref>
                </sup> through iterative processes, ensuring robustness even with high-dimensional data and limited prior knowledge. Hybrid approaches
                <sup>
                    <xref ref-type="bibr" rid="ref23">23</xref>
                </sup> combining metaheuristic algorithms with machine learning methods have recently emerged, offering improved convergence rates and solution quality for complex hyperspectral imaging tasks.</p>
            <p>The existing literature reveals several research gaps, including how initial solutions are selected, how thoroughly the solution space is explored, and how well diversity within the population is preserved. Therefore, in this study, we introduce an improved version of the Jaya algorithm aimed at selecting the most effective subset of bands for hyper-spectral images, with the goal of avoiding local optima and significantly boosting classification performance. A balance between exploration and exploitation is stroked by our approach to effectively reach the global optimum within a high-dimensional search space, the approach demonstrates outstanding performance and has outperformed several existing methods in recent studies. The Jaya algorithm
                <sup>
                    <xref ref-type="bibr" rid="ref24">24</xref>
                </sup> is well-known for its simplicity and for being a parameter-free optimization algorithm. We employed the Jaya algorithm in this study to enhance exploitation of the search space and eliminate the need for hyperparameter tuning. The proposed method, which integrates strategies aimed at enhancing population diversity and exploration, contributes significantly to overall effectiveness.</p>
            <p>The main highlights and contributions of this work can be outlined as follows:
                <list list-type="bullet">
                    <list-item>
                        <label>&#x2022;</label>
                        <p>We propose a wrapper-based band selection (BS) method, EJaya, a binary Jaya algorithm enhanced with a mutation operator to increase population diversity while avoiding premature convergence. This leads to the selection of more informative and compact spectral band subsets.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>The initial population is generated using Opposition-Based Learning (OBL)
                            <sup>
                                <xref ref-type="bibr" rid="ref25">25</xref>
                            </sup> to ensure better diversity and proximity to optimal solutions. To prevent stagnation, a Quasi-reflection reinitialization (QRI)
                            <sup>
                                <xref ref-type="bibr" rid="ref26">26</xref>
                            </sup> mechanism periodically generates diverse candidates that enhances global search in the solution space.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>We introduce a multi-objective fitness function that combines classification accuracy and spectral class separability (measured using the Jeffries&#x2013;Matusita distance). This ensures that the selected bands are not only optimal for classification but also maximally discriminative. Additionally, elite preservation and an early stopping criterion are integrated to retain optimal solutions and reduce unnecessary computation.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>We compare the proposed enhanced Jaya-based approach with several widely used metaheuristic-driven band selection techniques evaluated using three standard hyperspectral datasets: Indian Pines, Pavia University, and Salinas. The results demonstrate superior classification accuracy with fewer selected bands.</p>
                    </list-item>
                </list>
            </p>
            <p>The rest of this paper is structured as follows: related works has been explained in Section 2, a comprehensive ex-planation of the methodology used in this study is provided in Section 3, while a detailed analysis of the experiments performed is explained in Section 4. Finally, Section 5 presents our conclusions along with possible directions for future research.</p>
        </sec>
        <sec id="sec2">
            <title>Related work</title>
            <p>The evolution of metaheuristic algorithms for hyperspectral band selection
                <sup>
                    <xref ref-type="bibr" rid="ref2">2</xref>,
                    <xref ref-type="bibr" rid="ref27">27</xref>
                </sup> provides a rich context for understanding the advances in this challenging field. Hyperspectral images (HSIs), with their hundreds of highly correlated spectral bands, impose significant computational and analytical burdens that necessitate effective dimensionality reduction techniques. Metaheuristic algorithms, with their flexible and robust optimization capabilities, have been extensively applied to select optimal bands that maximize classification accuracy while reducing redundancy and noise. We subsequently offer a comprehensive in-depth chronological overview of key metaheuristic algorithms employed for band selection, focusing on their methodologies, limitations, and how the methods have influenced subsequent research developments.

                <list list-type="bullet">
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Genetic Algorithm (GA) are among the earliest and most widely studied evolutionary techniques for hyperspectral band selection.
                            <sup>
                                <xref ref-type="bibr" rid="ref28">28</xref>,
                                <xref ref-type="bibr" rid="ref29">29</xref>
                            </sup> They simulate natural evolution using selection, crossover, and mutation to evolve band subsets, typically represented as binary strings or continuous vectors. GAs often relies on wrapper-based fitness evaluation using classifiers like SVM to guide the search toward informative bands. While effective, GAs can be computationally intensive for high-dimensional data and require careful tuning of parameters to maintain diversity and avoid premature convergence. Despite these challenges, GAs have shown strong performance in agricultural and disease detection tasks and have inspired continuous and hybrid variants, establishing them as a benchmark in hyperspectral analysis.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Particle Swarm Optimization (PSO) introduces a swarm intelligence-based strategy draws inspiration from the coordinated movements seen in flocks of birds and schools of fish. In hyperspectral band selection, each particle represents a potential subset of bands and adjusts its position by learning from its own best experience and the best performance in the group, aiming to enhance classification accuracy, typically using SVM-based fitness evaluations.
                            <sup>
                                <xref ref-type="bibr" rid="ref20">20</xref>
                            </sup> PSO is favored for its simplicity and faster convergence compared to GA.
                            <sup>
                                <xref ref-type="bibr" rid="ref30">30</xref>
                            </sup> Nevertheless, it faces notable limitations, including a tendency to converge prematurely to local optima, limited robustness when handling high-dimensional or noisy datasets, and significant sensitivity to parameters like inertia weight and acceleration factors. These issues are particularly problematic when dealing with nonlinearly separable or highly correlated spectral features. While hybrid and adaptive variants of PSO have been proposed to mitigate these weaknesses, standard PSO often trades off solution quality for speed, making it less stable than GA in complex HSI scenarios.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Grey Wolf Optimizer (GWO) introduces a swarm intelligence approach structured around a hierarchical model, inspired by the cooperative hunting patterns of grey wolves. The search for optimal band subsets is directed by the leading wolves&#x2014;alpha, beta, and delta as described in.
                            <sup>
                                <xref ref-type="bibr" rid="ref31">31</xref>,
                                <xref ref-type="bibr" rid="ref32">32</xref>
                            </sup> It balances exploration and exploitation through encircling and attacking mechanisms, making it well-suited for high-dimensional hyperspectral band selection. GWO has shown competitive performance on datasets like Indian Pines and Pavia University, often producing compact subsets without sacrificing classification accuracy. However, it relies heavily on parameter tuning to maintain population diversity and can suffer from local optima in later iterations. Additionally, its computational cost increases with feature space size. These limitations have prompted hybrid versions with improved initialization and mutation strategies, highlighting GWO&#x2019;s adaptability but also its sensitivity to configuration in complex HSI scenarios.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Ant Colony Algorithm (ACA) model band selection as a path-finding problem, where artificial ants construct band subsets guided by pheromone trails and heuristic cues such as mutual information or redundancy scores.
                            <sup>
                                <xref ref-type="bibr" rid="ref33">33</xref>
                            </sup> Pheromone updates balance exploration and exploitation, aiming to avoid stagnation and guide ants to-ward optimal subsets.
                            <sup>
                                <xref ref-type="bibr" rid="ref34">34</xref>
                            </sup> While ACA promotes solution diversity and heuristic-driven search, it suffers from slow convergence and risks premature convergence due to pheromone saturation. Its performance is highly sensitive to parameter tuning&#x2014;especially evaporation rate and heuristic weight&#x2014;and pheromone update steps can be computationally expensive for large hyperspectral datasets. Improved variants have sought to enhance convergence speed and diversity control,
                            <sup>
                                <xref ref-type="bibr" rid="ref35">35</xref>
                            </sup> but ACA remains less efficient than other swarm-based methods, despite its biological inspiration and strong heuristic incorporation.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Moth-Flame Optimization (MFO) simulates the transverse orientation behavior of moths, using spiral trajectories to explore the solution space around elite solutions (flames).
                            <sup>
                                <xref ref-type="bibr" rid="ref36">36</xref>,
                                <xref ref-type="bibr" rid="ref37">37</xref>
                            </sup> Its adaptive flame-reduction mechanism balances exploration and exploitation over time, making it effective for hyperspectral band selection. MFO has shown strong performance on datasets like Indian Pines and Salinas, often outperforming GA and PSO in classification accuracy. However, its local search capability is inherently limited, which can lead to stagnation without hybridization or diversification mechanisms. Additionally, its computational cost increases with population size and data dimensionality, potentially affecting scalability. Despite these limitations, MFO introduces a novel bioinspired search strategy that has broadened the scope of nature-inspired methods in hyperspectral analysis.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Wild Horse Optimizer (WHO) is a recent metaheuristic inspired by herd dynamics and leadership behaviors in wild horse populations. It simulates population-based search through social interaction and adaptive movement, making it applicable to hyperspectral band selection, where fitness is typically based on classification accuracy.</p>
                    </list-item>
                </list>
            </p>
            <p>However, the original WHO faces key limitations, including premature convergence and poor diversity maintenance in later stages. Enhanced variants like IBSWHO
                <sup>
                    <xref ref-type="bibr" rid="ref38">38</xref>
                </sup> address these issues using Sobol sequence initialization, Cauchy mutations, and dynamic search strategies to improve exploration and escape local optima. While IBSWHO shows strong performance on standard hyperspectral datasets, these enhancements increase computational cost and parameter tuning complexity&#x2014;highlighting the trade-offs in designing adaptive metaheuristics for high-dimensional data.

                <list list-type="bullet">
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Binary Multi-objective Clonal Algorithm (BMCA) is inspired by immune system principles, particularly clonal se-lection and affinity maturation. It encodes band subsets as binary strings and simultaneously optimizes objectives such as maximizing entropy and minimizing Pearson correlation.
                            <sup>
                                <xref ref-type="bibr" rid="ref39">39</xref>
                            </sup> Through cloning and hypermutation, BMCA enhances diversity and solution refinement, showing strong classification performance over methods like NSGA-II, BSSO, and PCA in hyperspectral segmentation tasks. However, its limitations include higher computational com-plexity due to mutation and cloning operations, and limited empirical validation compared to more established algorithms. Despite this, BMCA broadens the optimization landscape with a biologically inspired multi-objective framework that addresses trade-offs often overlooked by single-objective approaches.</p>
                    </list-item>
                    <list-item>
                        <label>&#x2022;</label>
                        <p>Quantum Annealer (QA)-based metaheuristics represent a novel approach to hyperspectral band selection by for-mulating it as a Quadratic Unconstrained Binary Optimization (QUBO) problem, leveraging quantum superposition and tunneling to escape local minima.
                            <sup>
                                <xref ref-type="bibr" rid="ref40">40</xref>
                            </sup> Integrated quantum classifiers like QBoost enable simultaneous band selection and classification within a quantum-enhanced framework. On datasets such as AVIRIS Indian Pines, QA methods have shown competitive or superior performance compared to classical metaheuristics. How-ever, their adoption is hindered by hardware limitations, sensitivity to noise and errors, and limited accessibility and expertise in quantum-hyperspectral integration. Scalability and hybrid quantum&#x2013;classical approaches remain key areas for future exploration, positioning QA as a promising but currently constrained frontier in hyperspectral optimization.</p>
                    </list-item>
                </list>
            </p>
            <p>Based on the related work, we identified the following research gaps: no single metaheuristic algorithm is sufficiently efficient in maintaining a proper balance between exploitation and exploration. Additionally, most metaheuristic algorithms require multiple control parameters, and effective tuning of these parameters remains a significant challenge. Another prevalent issue with swarm-based metaheuristic algorithm is slow or premature convergence. To address these issues, we employed the Jaya optimization algorithm integrated with a mutation operator to enhance the balance between exploration and exploitation. Furthermore, the inclusion of the mutation operator contributes to improving the convergence speed.</p>
        </sec>
        <sec id="sec3">
            <title>Methodology</title>
            <sec id="sec4">
                <title>Background</title>
                <p>Consider a hyperspectral image dataset represented as 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>X</mml:mi>
                                <mml:mrow>
                                    <mml:mi>H</mml:mi>
                                    <mml:mo>&#x00d7;</mml:mo>
                                    <mml:mi>W</mml:mi>
                                    <mml:mo>&#x00d7;</mml:mo>
                                    <mml:mi>N</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula>, where 
                    <italic toggle="yes">H</italic> and 
                    <italic toggle="yes">W</italic> refer to the spatial dimensions that is height and width of the image, and 
                    <italic toggle="yes">N</italic> indicates the number of spectral bands, forming the feature dimension along the third axis. If the spatial pixel position is
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:mi>p</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>i</mml:mi>
                                <mml:mo>,</mml:mo>
                                <mml:mi>j</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula>, then its spectral feature vector is defined as:
                    <disp-formula id="e1">

                        <mml:math display="block">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi mathvariant="normal">j</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi mathvariant="normal">j</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi mathvariant="normal">j</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mi mathvariant="normal">N</mml:mi>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi mathvariant="normal">j</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</disp-formula>where each 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>p</mml:mi>
                                <mml:mi>k</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>i</mml:mi>
                                <mml:mo>,</mml:mo>
                                <mml:mi>j</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> corresponds to the intensity value at band 
                    <italic toggle="yes">k</italic> for pixel at location (
                    <italic toggle="yes">i</italic>, 
                    <italic toggle="yes">j</italic>), and 
                    <italic toggle="yes">k</italic> = 1, 2, &#x2026;, 
                    <italic toggle="yes">N</italic> represents the band index.</p>
                <p>Let the hyperspectral data consist of 
                    <italic toggle="yes">K</italic> classes, denoted as:
                    <disp-formula id="e2">

                        <mml:math display="block">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi mathvariant="normal">C</mml:mi>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">C</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">C</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">C</mml:mi>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">C</mml:mi>
                                    <mml:mi mathvariant="normal">K</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</disp-formula>
                </p>
                <p>Let 
                    <italic toggle="yes">n</italic> be the number of selected spectral bands, denoted as:
                    <disp-formula id="e3">

                        <mml:math display="block">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi mathvariant="normal">B</mml:mi>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">b</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">b</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">b</mml:mi>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">b</mml:mi>
                                    <mml:mi mathvariant="normal">K</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</disp-formula>
                </p>
                <p>A hyperspectral image dataset comprising 
                    <italic toggle="yes">N</italic> spectral bands and spatial dimensions of 
                    <italic toggle="yes">H&#x00d7;W</italic> pixels can be mathematically represented as:
                    <disp-formula id="e4">

                        <mml:math display="block">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi mathvariant="normal">C</mml:mi>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">x</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">x</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">x</mml:mi>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">x</mml:mi>
                                    <mml:mi mathvariant="normal">N</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</disp-formula>where each band 
                    <italic toggle="yes">xi</italic> can be expressed as a vector of all its pixel values:
                    <disp-formula id="e5">

                        <mml:math display="block">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">x</mml:mi>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                </mml:msub>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>,</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>,</mml:mo>
                                    <mml:mn>2</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi mathvariant="normal">p</mml:mi>
                                    <mml:mi mathvariant="normal">i</mml:mi>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi mathvariant="normal">H</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi mathvariant="normal">W</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</disp-formula>
                </p>
                <p>The following subsection elaborates on the proposed Enhanced Jaya algorithm and its associated objective function.</p>
            </sec>
            <sec id="sec5">
                <title>Opposition-Based Learning</title>
                <p>Opposition-Based Learning (OBL) is a method applied during the initial stage of optimization to generate a diverse and well-distributed set of potential solutions, enhancing the algorithm&#x2019;s ability to thoroughly explore the search space. Instead of relying solely on random initialization, OBL evaluates each solution alongside its corresponding opposite within the defined search space. Thereby increasing the likelihood of initial population closer to the global optimum. Consider a search space defined for each dimension 
                    <italic toggle="yes">j &#x03f5; {</italic>1, 2, &#x2026;, 
                    <italic toggle="yes">d}</italic> by a lower bound
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> and an upper bound 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula>. Given a candidate solution 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>x</mml:mi>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mi>d</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula>, the corresponding opposite solution is evaluated as 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x00af;</mml:mo>
                                </mml:mover>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x00af;</mml:mo>
                                    </mml:mover>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x00af;</mml:mo>
                                    </mml:mover>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x00af;</mml:mo>
                                    </mml:mover>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x00af;</mml:mo>
                                    </mml:mover>
                                    <mml:mi>d</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula>, where each component 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x00af;</mml:mo>
                                </mml:mover>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> is calculated using the formula:
                    <disp-formula id="e6">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x00af;</mml:mo>
                                </mml:mover>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:mtext>for</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>j</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mo>,</mml:mo>
                            <mml:mn>2</mml:mn>
                            <mml:mo>,</mml:mo>
                            <mml:mo>&#x2026;</mml:mo>
                            <mml:mo>,</mml:mo>
                            <mml:mi>d</mml:mi>
                        </mml:math>

                        <label>(1)</label>
</disp-formula>
                </p>
                <p>This equation effectively reflects each component 
                    <italic toggle="yes">x j</italic> across the midpoint of the interval 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
</inline-formula>thereby generating a solution on the opposite side of the search space.</p>
                <p>For each randomly generated solution 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> in the initial population, its opposite 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x00af;</mml:mo>
                                </mml:mover>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
</inline-formula>is also computed. The fitness values of both 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> and its opposite 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x00af;</mml:mo>
                                </mml:mover>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
</inline-formula>are evaluated, and the one with better fitness is chosen to be included in the population. This method enhances the variety of the starting population and raises the chances of beginning the search near the global optimum.</p>
            </sec>
            <sec id="sec6">
                <title>Jaya with mutation</title>
                <p>The standard Jaya algorithm
                    <sup>
                        <xref ref-type="bibr" rid="ref41">41</xref>
                    </sup> is a population-based metaheuristic that draws inspiration from the concept of &#x201c;survival of the fittest&#x201d;. Essentially, the Jaya algorithm seeks to achieve success by getting closer to optimal solutions and avoiding failure by distancing itself from poor ones. It offers several advantages, such as being simple to implement and not requiring any algorithm-specific parameters. Its performance relies only on two factors: the size of the population and the number of iterations. May struggle with local optima in complex, high-dimensional environments like hyperspectral data. To address this limitation, we propose an improved version of the algorithm that incorporates a mutation operator to boost exploration and avoid stagnation.</p>
                <p>The key steps of the algorithm represented in the 
                    <xref ref-type="fig" rid="f1">
Figure 1</xref> are as follows:
                    <list list-type="order">
                        <list-item>
                            <label>1.</label>
                            <p>Population Initialization: A population of binary vectors is randomly initialized, with each vector representing a potential solution, and the 
                                <italic toggle="yes">D</italic>-dimensional vector 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mrow>
                                            <mml:mo stretchy="true">[</mml:mo>
                                            <mml:msub>
                                                <mml:mi>x</mml:mi>
                                                <mml:mi>i</mml:mi>
                                            </mml:msub>
                                            <mml:mo>=</mml:mo>
                                            <mml:msub>
                                                <mml:mi>X</mml:mi>
                                                <mml:mrow>
                                                    <mml:mo stretchy="true">(</mml:mo>
                                                    <mml:mi>i</mml:mi>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:mn>1</mml:mn>
                                                    <mml:mo stretchy="true">)</mml:mo>
                                                </mml:mrow>
                                            </mml:msub>
                                            <mml:mo>,</mml:mo>
                                            <mml:msub>
                                                <mml:mi>X</mml:mi>
                                                <mml:mrow>
                                                    <mml:mo stretchy="true">(</mml:mo>
                                                    <mml:mi>i</mml:mi>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:mn>2</mml:mn>
                                                    <mml:mo stretchy="true">)</mml:mo>
                                                </mml:mrow>
                                            </mml:msub>
                                            <mml:mo>,</mml:mo>
                                            <mml:mo>&#x2026;</mml:mo>
                                            <mml:mo>,</mml:mo>
                                            <mml:msub>
                                                <mml:mi>X</mml:mi>
                                                <mml:mrow>
                                                    <mml:mo stretchy="true">(</mml:mo>
                                                    <mml:mi>i</mml:mi>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:mi>D</mml:mi>
                                                    <mml:mo stretchy="true">)</mml:mo>
                                                </mml:mrow>
                                            </mml:msub>
                                            <mml:mo stretchy="true">]</mml:mo>
                                        </mml:mrow>
                                    </mml:math>
</inline-formula> denoting the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>i</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                    </mml:math>
</inline-formula> solution. These solutions are generated randomly. Each element in the binary vector corresponds to a spectral band, with 1 indicating selection and 0 indicating exclusion.</p>
                        </list-item>
                    </list>

                    <disp-formula id="e7">

                        <mml:math display="block">
                            <mml:msubsup>
                                <mml:mi>X</mml:mi>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>j</mml:mi>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>g</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msubsup>
                            <mml:mo>=</mml:mo>
                            <mml:msubsup>
                                <mml:mi>X</mml:mi>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>j</mml:mi>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>g</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msubsup>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>r</mml:mi>
                                <mml:mrow>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>j</mml:mi>
                                </mml:mrow>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msubsup>
                                    <mml:mi>X</mml:mi>
                                    <mml:mrow>
                                        <mml:mtext mathvariant="italic">best</mml:mtext>
                                        <mml:mo>,</mml:mo>
                                        <mml:mi>j</mml:mi>
                                    </mml:mrow>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>g</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:msubsup>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:mrow>
                                    <mml:mo>|</mml:mo>
                                    <mml:msubsup>
                                        <mml:mi>X</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>,</mml:mo>
                                            <mml:mi>j</mml:mi>
                                        </mml:mrow>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mi>g</mml:mi>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                    </mml:msubsup>
                                    <mml:mo>|</mml:mo>
                                </mml:mrow>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:msub>
                                <mml:mi>r</mml:mi>
                                <mml:mrow>
                                    <mml:mn>2</mml:mn>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>j</mml:mi>
                                </mml:mrow>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msubsup>
                                    <mml:mi>X</mml:mi>
                                    <mml:mrow>
                                        <mml:mtext mathvariant="italic">worst</mml:mtext>
                                        <mml:mo>,</mml:mo>
                                        <mml:mi>j</mml:mi>
                                    </mml:mrow>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>g</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:msubsup>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:mrow>
                                    <mml:mo>|</mml:mo>
                                    <mml:msubsup>
                                        <mml:mi>X</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>,</mml:mo>
                                            <mml:mi>j</mml:mi>
                                        </mml:mrow>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mi>g</mml:mi>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                    </mml:msubsup>
                                    <mml:mo>|</mml:mo>
                                </mml:mrow>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(2)</label>
</disp-formula>where,

                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                    </mml:math>
</inline-formula> represents the value of the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>j</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>variable in the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>i</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>candidate solution at generation g.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mn>1</mml:mn>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                    </mml:math>
</inline-formula> the updated value assigned to the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>j</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                    </mml:math>
</inline-formula> variable of the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>i</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>solution in generation 
                                <italic toggle="yes">g</italic> + 1.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:mrow>
                                                <mml:mtext mathvariant="italic">best</mml:mtext>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mn>1</mml:mn>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                    </mml:math>
</inline-formula> represents the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>j</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                    </mml:math>
</inline-formula> component of the best candidate solution in generation 
                                <italic toggle="yes">g.</italic>
                            </p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:mrow>
                                                <mml:mtext mathvariant="italic">worst</mml:mtext>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mn>1</mml:mn>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                    </mml:math>
</inline-formula> represents the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>j</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>component of the worst candidate solution in generation 
                                <italic toggle="yes">g.</italic>
                            </p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>r</mml:mi>
                                            <mml:mrow>
                                                <mml:mn>1</mml:mn>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                        </mml:msub>
                                        <mml:mo>,</mml:mo>
                                        <mml:msub>
                                            <mml:mi>r</mml:mi>
                                            <mml:mrow>
                                                <mml:mn>2</mml:mn>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> are independently generated two random values within the range [0,1] for each index pair (
                                <italic toggle="yes">i</italic>, 
                                <italic toggle="yes">j</italic>).</p>
                        </list-item>
                    </list>
                </p>
                <fig fig-type="figure" id="f1" orientation="portrait" position="float">
                    <label>
Figure 1. </label>
                    <caption>
                        <title>Metaheuristic-based band selection framework.</title>
                    </caption>
                    <graphic id="gr1" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure1.gif"/>
                </fig>
                <p>For each generation, the algorithm identifies the best and worst solutions in the population. New solutions are generated by updating the current population based on the best and worst solutions. In particular, the Jaya algorithm updates each solution by steering it toward the top-performing solution (best candidate) and away from the worst, as described in 
                    <xref ref-type="disp-formula" rid="e7">Eq. (2)</xref>. To promote faster exploration and convergence toward the optimal solution, an efficient mutation strategy
                    <sup>
                        <xref ref-type="bibr" rid="ref42">42</xref>
                    </sup> is integrated into the Jaya algorithm to mitigate slow convergence. Experimental results demonstrate that integrating a mutation operator into the Jaya algorithm improves the diversity of candidate solutions and enhances the search capability of the algorithm. Consequently, the mutation operator accelerates convergence, allowing the algorithm to reach the optimal solution in fewer iterations.</p>
                <p>An adaptive mutation operator is introduced to improve the balance between exploration and exploitation while also reducing the overall computation time. The mutation operator is mathematically defined as follows:
                    <disp-formula id="e8">

                        <mml:math display="block">
                            <mml:msubsup>
                                <mml:mi>X</mml:mi>
                                <mml:mi>i</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>g</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msubsup>
                            <mml:mo>=</mml:mo>
                            <mml:msubsup>
                                <mml:mi>X</mml:mi>
                                <mml:msub>
                                    <mml:mi>r</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>g</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msubsup>
                            <mml:mo>+</mml:mo>
                            <mml:mi>F</mml:mi>
                            <mml:mo>.</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msubsup>
                                    <mml:mi>X</mml:mi>
                                    <mml:msub>
                                        <mml:mi>r</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msub>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>g</mml:mi>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:msubsup>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msubsup>
                                    <mml:mi>X</mml:mi>
                                    <mml:msub>
                                        <mml:mi>r</mml:mi>
                                        <mml:mn>3</mml:mn>
                                    </mml:msub>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>g</mml:mi>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:msubsup>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(3)</label>
</disp-formula>where

                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <italic toggle="yes">j &#x03f5; {</italic>1, 2, &#x2026;, 
                                <italic toggle="yes">D}</italic>, denoting the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>j</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>candidate solution in a population of size 
                                <italic toggle="yes">D.</italic>
                            </p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:msub>
                                                <mml:mi>r</mml:mi>
                                                <mml:mn>1</mml:mn>
                                            </mml:msub>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                        <mml:mo>,</mml:mo>
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:msub>
                                                <mml:mi>r</mml:mi>
                                                <mml:mn>2</mml:mn>
                                            </mml:msub>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                        <mml:mo>,</mml:mo>
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:msub>
                                                <mml:mi>r</mml:mi>
                                                <mml:mn>3</mml:mn>
                                            </mml:msub>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi>g</mml:mi>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:msubsup>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>are randomly selected individuals from the current population at generation 
                                <italic toggle="yes">g.</italic>
                            </p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <italic toggle="yes">F</italic> is a scaling factor that controls the amplification of the differential variation and avoid stagnation in the population.</p>
                        </list-item>
                    </list>
                </p>
                <p>An adaptive scaling factor is employed, defined as follows:
                    <disp-formula id="e9">

                        <mml:math display="block">
                            <mml:mi>F</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mi>I</mml:mi>
                            <mml:mo>+</mml:mo>
                            <mml:mo mathvariant="italic">rand</mml:mo>
                            <mml:mo>.</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mfrac>
                                    <mml:mrow>
                                        <mml:mi>G</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mi>g</mml:mi>
                                    </mml:mrow>
                                    <mml:mi>G</mml:mi>
                                </mml:mfrac>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(4)</label>
</disp-formula>where 
                    <italic toggle="yes">I</italic> denote the initial value of the scaling factor 
                    <italic toggle="yes">F</italic> which sets to 0.8, The variable 
                    <italic toggle="yes">g</italic> refers to the current iteration number, and 
                    <italic toggle="yes">G</italic> represents the total number of iterations. The mutation rate gradually declines from 1 to 0 over the course of iterations. It begins with a lower intensity in the initial phases and gradually increases during the later stages. This adaptive adjustment improves the algorithm&#x2019;s exploration capability. As a result, the algorithm effectively balances exploration and exploitation by incorporating both adaptive mutation and update mechanisms.</p>
            </sec>
            <sec id="sec7">
                <title>Quasi-reflection reinitialization</title>
                <p>This mechanism kicks in when the algorithm seems to stop making progress, usually noticed when there is no noticeable improvement in the objective function after a certain number of continuous iterations. The objective is to introduce complementary or diverse candidate solutions that can guide the search for local optima. Given a solution vector 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>x</mml:mi>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mi>d</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula>, in a bounded search space where 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>&#x03f5;</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
</inline-formula>, its quasi-reflected counterpart 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x0302;</mml:mo>
                                </mml:mover>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x0302;</mml:mo>
                                    </mml:mover>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x0302;</mml:mo>
                                    </mml:mover>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x0302;</mml:mo>
                                    </mml:mover>
                                    <mml:mn>3</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:mo>&#x2026;</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>.</mml:mo>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>x</mml:mi>
                                        <mml:mo stretchy="true">&#x0302;</mml:mo>
                                    </mml:mover>
                                    <mml:mi>d</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> is computed as:
                    <disp-formula id="e10">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>x</mml:mi>
                                    <mml:mo stretchy="true">&#x0302;</mml:mo>
                                </mml:mover>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mi>r</mml:mi>
                            <mml:mo>.</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo>+</mml:mo>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                            <mml:mtext>for</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>j</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mo>,</mml:mo>
                            <mml:mn>2</mml:mn>
                            <mml:mo>,</mml:mo>
                            <mml:mo>&#x2026;</mml:mo>
                            <mml:mo>,</mml:mo>
                            <mml:mi>d</mml:mi>
                        </mml:math>

                        <label>(5)</label>
</disp-formula>where:

                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <italic toggle="yes">r &#x03f5;</italic> [0,1] is a randomly chosen scaling factor that controls the degree of reflection,</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>a</mml:mi>
                                            <mml:mi>j</mml:mi>
                                        </mml:msub>
                                        <mml:mspace width="0.25em"/>
                                    </mml:math>
</inline-formula>and 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>b</mml:mi>
                                            <mml:mi>j</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> are the boundaries (lower and upper) of dimension 

                                <italic toggle="yes">j</italic>,</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mi>j</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> is the current component of the solution vector.</p>
                        </list-item>
                    </list>
                </p>
                <p>Unlike strict reflection (which uses a fixed midpoint), quasi-reflection introduces controlled randomness via the factor 
                    <italic toggle="yes">r</italic>, thereby generating diverse and non-symmetric alternatives. This strategy is particularly useful for reinitializing poor solutions or revitalizing the population when the algorithm stagnates.</p>
            </sec>
            <sec id="sec8">
                <title>Objective function</title>
                <p>The objective function serves an essential function in evaluating candidate subsets and quantifying their quality. Broadly, it can be divided into two main categories
                    <sup>
                        <xref ref-type="bibr" rid="ref43">43</xref>
                    </sup>: filter methods, which evaluate subsets of features based on their intrinsic properties, such as statistical measures without considering the specific classification model, and wrapper methods utilize a classifier to assess the performance of feature subsets, making the evaluation dependent on the chosen model. In our study, the fitness function is designed to integrate two critical objectives: classification accuracy and class separability. This dual-objective approach ensures a balance between the predictive performance of the selected subset and its ability to distinguish between classes effectively. The objective function suggested is typically formulated in the following manner:
                    <disp-formula id="e11">

                        <mml:math display="block">
                            <mml:mi>f</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>w</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>&#x00d7;</mml:mo>
                            <mml:mtext mathvariant="italic">Classification Accuracy</mml:mtext>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>w</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo>&#x00d7;</mml:mo>
                            <mml:mtext mathvariant="italic">Measure of Class Separability</mml:mtext>
                        </mml:math>

                        <label>(6)</label>
</disp-formula>
                </p>
            </sec>
            <sec id="sec9">
                <title>Metric for classification performance</title>
                <p>Accuracy is calculated by dividing the number of correctly classified pixels by the total number of pixels in the test set, offering a clear measure of the model&#x2019;s overall performance.
                    <disp-formula id="e12">

                        <mml:math display="block">
                            <mml:mtext mathvariant="italic">Accuracy</mml:mtext>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>x</mml:mi>
                                            <mml:mo>&#x2208;</mml:mo>
                                            <mml:mi mathvariant="italic">TS</mml:mi>
                                        </mml:mrow>
                                    </mml:msub>
                                    <mml:mi>I</mml:mi>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">[</mml:mo>
                                        <mml:mover accent="true">
                                            <mml:mi>y</mml:mi>
                                            <mml:mo stretchy="true">&#x0302;</mml:mo>
                                        </mml:mover>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mi>x</mml:mi>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mi>y</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mi>x</mml:mi>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                        <mml:mo stretchy="true">]</mml:mo>
                                    </mml:mrow>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mo>|</mml:mo>
                                    <mml:mi mathvariant="italic">TS</mml:mi>
                                    <mml:mo>|</mml:mo>
                                </mml:mrow>
                            </mml:mfrac>
                        </mml:math>

                        <label>(7)</label>
</disp-formula>
                </p>
                <p>here, I[.] is the indicator function that outputs 1 if a pixel is classified correctly and 0 otherwise. TS represents the set of test pixels. The accuracy function calculates the rate at which pixels are correctly classified. It is essential to note that this rate will be calculated exclusively for the selected band (where 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                        </mml:math>
</inline-formula>), while bands with 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
</inline-formula> will be ignored. Here we propose the concept of a KNN classifier to determine the classification accuracy, which reflects the capacity of the selected bands to distinguish between different classes based on their spectral signatures.</p>
            </sec>
            <sec id="sec10">
                <title>Metrics for class separability</title>
                <p>The main objective of class separability within feature selection is to highlight features that most clearly separate classes, determined by evaluating the distance between class distributions. There are various distance metrics, among which the following are applied most frequently in hyperspectral band selection.</p>
                <p>The statistical technique Jeffries-Matusita (JM) distance
                    <sup>
                        <xref ref-type="bibr" rid="ref44">44</xref>,
                        <xref ref-type="bibr" rid="ref45">45</xref>
                    </sup> is commonly used to assess the degree to which the spectral signatures of different classes are separated in the reduced feature space. It helps determine how effectively two classes (or distributions) can be distinguished based on their statistical characteristics. In the context of binary classification, the JM distance separating class 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula> from class 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
</inline-formula>is defined as:
                    <disp-formula id="e13">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi mathvariant="italic">JM</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:msqrt>
                                <mml:mrow>
                                    <mml:mn>2</mml:mn>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:msup>
                                            <mml:mi>e</mml:mi>
                                            <mml:mrow>
                                                <mml:mo>&#x2212;</mml:mo>
                                                <mml:msub>
                                                    <mml:mi>B</mml:mi>
                                                    <mml:msub>
                                                        <mml:mi>b</mml:mi>
                                                        <mml:mi>i</mml:mi>
                                                    </mml:msub>
                                                </mml:msub>
                                            </mml:mrow>
                                        </mml:msup>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:mrow>
                            </mml:msqrt>
                        </mml:math>

                        <label>(8)</label>
</disp-formula>where 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>B</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                        </mml:math>
</inline-formula> represents the Bhattacharyya distance between the two classes. The Bhattacharyya distance quantifies the degree of overlap between the two probability distributions and is expressed as:
                    <disp-formula id="e14">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>B</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mn>1</mml:mn>
                                <mml:mn>8</mml:mn>
                            </mml:mfrac>
                            <mml:msup>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:msub>
                                        <mml:mi>&#x03bc;</mml:mi>
                                        <mml:mrow>
                                            <mml:msub>
                                                <mml:mi>c</mml:mi>
                                                <mml:mn>1</mml:mn>
                                            </mml:msub>
                                            <mml:mo>&#x2212;</mml:mo>
                                        </mml:mrow>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>&#x03bc;</mml:mi>
                                        <mml:msub>
                                            <mml:mi>c</mml:mi>
                                            <mml:mn>2</mml:mn>
                                        </mml:msub>
                                    </mml:msub>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mi>T</mml:mi>
                            </mml:msup>
                            <mml:msup>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mfrac>
                                        <mml:mrow>
                                            <mml:msub>
                                                <mml:mo>&#x2211;</mml:mo>
                                                <mml:msub>
                                                    <mml:mi>c</mml:mi>
                                                    <mml:mn>1</mml:mn>
                                                </mml:msub>
                                            </mml:msub>
                                            <mml:mo>+</mml:mo>
                                            <mml:msub>
                                                <mml:mo>&#x2211;</mml:mo>
                                                <mml:msub>
                                                    <mml:mi>c</mml:mi>
                                                    <mml:mn>2</mml:mn>
                                                </mml:msub>
                                            </mml:msub>
                                        </mml:mrow>
                                        <mml:mn>2</mml:mn>
                                    </mml:mfrac>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>&#x03bc;</mml:mi>
                                    <mml:mrow>
                                        <mml:msub>
                                            <mml:mi>c</mml:mi>
                                            <mml:mn>1</mml:mn>
                                        </mml:msub>
                                        <mml:mo>&#x2212;</mml:mo>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:msub>
                                    <mml:mi>&#x03bc;</mml:mi>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msub>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>+</mml:mo>
                            <mml:mfrac>
                                <mml:mn>1</mml:mn>
                                <mml:mn>2</mml:mn>
                            </mml:mfrac>
                            <mml:mo>ln</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mfrac>
                                    <mml:mrow>
                                        <mml:mo>|</mml:mo>
                                        <mml:mfrac>
                                            <mml:mrow>
                                                <mml:msub>
                                                    <mml:mi>&#x2211;</mml:mi>
                                                    <mml:mrow>
                                                        <mml:msub>
                                                            <mml:mi>c</mml:mi>
                                                            <mml:mn>1</mml:mn>
                                                        </mml:msub>
                                                    </mml:mrow>
                                                </mml:msub>
                                                <mml:mo>+</mml:mo>
                                                <mml:msub>
                                                    <mml:mi>&#x2211;</mml:mi>
                                                    <mml:mrow>
                                                        <mml:msub>
                                                            <mml:mi>c</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msub>
                                                    </mml:mrow>
                                                </mml:msub>
                                            </mml:mrow>
                                            <mml:mn>2</mml:mn>
                                        </mml:mfrac>
                                        <mml:mo>|</mml:mo>
                                    </mml:mrow>
                                    <mml:mrow>
                                        <mml:msqrt>
                                            <mml:mrow>
                                                <mml:mo>|</mml:mo>
                                                <mml:msub>
                                                    <mml:mo>&#x2211;</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                </mml:msub>
                                            </mml:mrow>
                                        </mml:msqrt>
                                        <mml:mo>|</mml:mo>
                                        <mml:mo>+</mml:mo>
                                        <mml:msqrt>
                                            <mml:mrow>
                                                <mml:mo>|</mml:mo>
                                                <mml:msub>
                                                    <mml:mo>&#x2211;</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mn>2</mml:mn>
                                                    </mml:msub>
                                                </mml:msub>
                                            </mml:mrow>
                                        </mml:msqrt>
                                        <mml:mo>|</mml:mo>
                                    </mml:mrow>
                                </mml:mfrac>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(9)</label>
</disp-formula>

                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>&#x03bc; are the mean vectors of the two distributions (representing the classes).</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <italic toggle="yes">&#x03a3;</italic> are the covariance matrices of the distributions.</p>
                        </list-item>
                    </list>
                </p>
                <p>In the context of multiclass classification, the Jeffries&#x2013;Matusita (JM) distance is computed using the following formula:
                    <disp-formula id="e15">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:munderover>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                                <mml:mi>N</mml:mi>
                            </mml:munderover>
                            <mml:munderover>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>j</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                                <mml:mi>N</mml:mi>
                            </mml:munderover>
                            <mml:mi>k</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>&#x03c9;</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mi>k</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>&#x03c9;</mml:mi>
                                    <mml:mi>j</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:msub>
                                <mml:mi mathvariant="italic">JM</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                        </mml:math>

                        <label>(10)</label>
</disp-formula>where k(
                    <italic toggle="yes">&#x03d6;</italic>) with the class prior probability specified, the JM distance for the selected features is defined by:
                    <disp-formula id="e16">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi mathvariant="italic">JM</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>B</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mrow>
                                    <mml:munderover>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>=</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>N</mml:mi>
                                    </mml:munderover>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x00d7;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>D</mml:mi>
                                        <mml:msub>
                                            <mml:mi>b</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:msub>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:munderover>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>=</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>N</mml:mi>
                                    </mml:munderover>
                                    <mml:msub>
                                        <mml:mi>D</mml:mi>
                                        <mml:msub>
                                            <mml:mi>b</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfrac>
                        </mml:math>

                        <label>(11)</label>
</disp-formula>
                </p>
                <p>The Jeffries-Matusita (JM) distance assumes that the features within each class are distributed according to a Gaussian model.</p>
                <p>The Hausdorff distance,
                    <sup>
                        <xref ref-type="bibr" rid="ref46">46</xref>
                    </sup> is a metric used to quantify the similarity between two sets. It quantifies the separation by measuring the distance from the most distant point in one set to the closest point in the other. The Hausdorff distance is utilized to evaluate how well different features (or bands) separate classes.</p>
                <p>The Hausdorff distance is used in a binary classification scenario with two classes, 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula> and 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula>, is defined as 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> as in below equation:
                    <disp-formula id="e17">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mo>max</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">{</mml:mo>
                                <mml:mi>h</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>1</mml:mn>
                                    </mml:msub>
                                    <mml:mo>,</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msub>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>,</mml:mo>
                                <mml:mi>h</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>1</mml:mn>
                                    </mml:msub>
                                    <mml:mo>,</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msub>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo stretchy="true">}</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(12)</label>
</disp-formula>

                    <disp-formula id="e18">

                        <mml:math display="block">
                            <mml:mi>h</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:munder>
                                <mml:mo>max</mml:mo>
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2208;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>1</mml:mn>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:munder>
                            <mml:munder>
                                <mml:mo>min</mml:mo>
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>j</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2208;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:munder>
                            <mml:mo>|</mml:mo>
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>j</mml:mi>
                            </mml:msub>
                            <mml:mo>|</mml:mo>
                        </mml:math>

                        <label>(13)</label>
</disp-formula>
                </p>
                <p>In this context, 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> refers to the pixels assigned to class
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula>, whereas 
                    <italic toggle="yes">x j</italic> corresponds the pixels assigned to class 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula>. The function 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>h</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> refers to the directed Hausdorff distance from 
                    <italic toggle="yes">c</italic>1 to 
                    <italic toggle="yes">c</italic>2. But for multiclass problem it can be defined for band 
                    <italic toggle="yes">bi</italic> as follows:
                    <disp-formula id="e19">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mn>1</mml:mn>
                                <mml:mrow>
                                    <mml:mi>k</mml:mi>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>k</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:mrow>
                            </mml:mfrac>
                            <mml:munderover>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mi>k</mml:mi>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:munderover>
                            <mml:munderover>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>j</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                                <mml:mi>k</mml:mi>
                            </mml:munderover>
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mrow>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>,</mml:mo>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(14)</label>
</disp-formula>
                </p>
                <p>For the selected features, the HD is calculated as follows:
                    <disp-formula id="e20">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>B</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mrow>
                                    <mml:munderover>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>=</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>N</mml:mi>
                                    </mml:munderover>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x00d7;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>D</mml:mi>
                                        <mml:msub>
                                            <mml:mi>b</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:msub>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:munderover>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>=</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>N</mml:mi>
                                    </mml:munderover>
                                    <mml:msub>
                                        <mml:mi>D</mml:mi>
                                        <mml:msub>
                                            <mml:mi>b</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfrac>
                        </mml:math>

                        <label>(15)</label>
</disp-formula>
                </p>
                <p>For the selected bands Hausdorff measure is computed by 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:munderover>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                                <mml:mi>N</mml:mi>
                            </mml:munderover>
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>&#x00d7;</mml:mo>
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
</inline-formula>and for all bands by 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:munderover>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                                <mml:mi>N</mml:mi>
                            </mml:munderover>
                            <mml:msub>
                                <mml:mi>D</mml:mi>
                                <mml:msub>
                                    <mml:mi>b</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:msub>
                        </mml:math>
</inline-formula>. Since 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> is binary the band is chosen when 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                        </mml:math>
</inline-formula> and not selected when 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
</inline-formula>

                    <italic toggle="yes">.</italic>
                </p>
            </sec>
            <sec id="sec11">
                <title>Proposed objective function</title>
                <p>We put forward three objective functions 
                    <italic toggle="yes">f</italic> (
                    <italic toggle="yes">A</italic>), 
                    <italic toggle="yes">f</italic> (
                    <italic toggle="yes">H</italic>), and 
                    <italic toggle="yes">f</italic> (
                    <italic toggle="yes">JM</italic>) in our model. The classification accuracy is the first objective function.
                    <disp-formula id="e21">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>A</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(16)</label>
</disp-formula>
                </p>
                <p>The combined value of all objective functions, calculated as a weighted sum, is expressed mathematically as:
                    <disp-formula id="e22">

                        <mml:math display="block">
                            <mml:mi>f</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>X</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:mo>&#x2026;</mml:mo>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>m</mml:mi>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>m</mml:mi>
                            </mml:msub>
                        </mml:math>

                        <label>(17)</label>
</disp-formula>
                </p>
                <p>Subject to 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:mo>&#x2026;</mml:mo>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>m</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                        </mml:math>
</inline-formula>.</p>
                <p>

                    <italic toggle="yes">w</italic>here
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:mo>&#x2026;</mml:mo>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>m</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> represent non-negative weights allocated to the 
                    <italic toggle="yes">m</italic> objective functions. They can be used to define the second objective by balancing classification accuracy with the Hausdorff term through a weighted sum. Similarly, the third objective function is formed by computing the weighted sum of classification accuracy and the Jeffries&#x2013;Matusita (JM) distance.
                    <disp-formula id="e23">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>A</mml:mi>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>A</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(18)</label>
</disp-formula>

                    <disp-formula id="e24">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>A</mml:mi>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>A</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>+</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi mathvariant="italic">JM</mml:mi>
                            </mml:msub>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi mathvariant="italic">JM</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>

                        <label>(19)</label>
</disp-formula>
                </p>
                <p>The weight 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>A</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> corresponds to the classification accuracy rate, while
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi>H</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> and 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>&#x03c9;</mml:mi>
                                <mml:mi mathvariant="italic">JM</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> represent the weights for the Hausdorff and JM distances term, respectively. The balance between these functions can be adjusted, or one term can be prioritized over the others.</p>
            </sec>
            <sec id="sec12">
                <title>Proposed Enhanced Jaya (EJaya)</title>
                <p>The proposed Enhanced Jaya algorithm with opposition-based learning, mutation and quasi-reinitialization is described in 
                    <xref ref-type="boxed-text" rid="B1">Algorithm 1</xref> and step-by-step explanation is described in the following three sub-sections.
                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Selection of Population using OBL</bold>
                            </p>
                            <p>Initial population is generated by random selection of 
                                <italic toggle="yes">M</italic> candidate solutions (band subsets). Each solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> is represented as a binary vector of length 
                                <italic toggle="yes">D</italic>, corresponding to the total number of spectral bands. In this binary encoding, each bit 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>,</mml:mo>
                                                <mml:mi>j</mml:mi>
                                            </mml:mrow>
                                        </mml:msub>
                                        <mml:mspace width="0.35em"/>
                                        <mml:mi>&#x03f5;</mml:mi>
                                        <mml:mspace width="0.25em"/>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">{</mml:mo>
                                            <mml:mn>1</mml:mn>
                                            <mml:mo>,</mml:mo>
                                            <mml:mn>0</mml:mn>
                                            <mml:mo stretchy="true">}</mml:mo>
                                        </mml:mrow>
                                    </mml:math>
</inline-formula> indicates whether the 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msup>
                                            <mml:mi>j</mml:mi>
                                            <mml:mi mathvariant="italic">th</mml:mi>
                                        </mml:msup>
                                    </mml:math>
</inline-formula> spectral band is selected (1) or not selected (0). By applying Opposition-Based-Learning (OBL) during initialization, the method aims to increase diversity and improve the coverage of potentially optimal regions within the search space right from the beginning. For each randomly generated candidate solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                        <mml:mo>,</mml:mo>
                                    </mml:math>
</inline-formula>its opposite 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mover accent="true">
                                                <mml:mi>X</mml:mi>
                                                <mml:mo stretchy="true">~</mml:mo>
                                            </mml:mover>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> is also computed using 
                                <xref ref-type="disp-formula" rid="e6">Eq. (1)</xref>. After evaluating the fitness of both 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                        <mml:mo>,</mml:mo>
                                    </mml:math>
</inline-formula> and its opposite 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mover accent="true">
                                                <mml:mi>X</mml:mi>
                                                <mml:mo stretchy="true">~</mml:mo>
                                            </mml:mover>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>, the one with the better result is included in the starting population. This strategy helps to accelerate convergence and avoid premature stagnation by promoting broader coverage of the search space.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Evaluation of Fitness</bold>
                            </p>
                            <p>It is performed by evaluating each of the candidate solution using a wrapper-based objective function that balances classification accuracy and spectral separability as defined in 
                                <xref ref-type="disp-formula" rid="e24">Eq. (19)</xref>.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Execution of Jaya Optimization with Mutation</bold>
                            </p>
                            <p>The main optimization loop proceeds iteratively, the process continues until it either reaches the predefined generation limit 
                                <italic toggle="yes">G</italic> or meets the early stopping condition. During each generation, the algorithm identifies the best solution
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mspace width="0.25em"/>
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mtext mathvariant="italic">best</mml:mtext>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>, which has the highest fitness, and the worst solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mtext mathvariant="italic">worst</mml:mtext>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>, which has the lowest fitness, from the current population. Using the Jaya algorithm&#x2019;s update rule as in 
                                <xref ref-type="disp-formula" rid="e7">Eq. (2)</xref>, each candidate solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> is adjusted to move closer to the best solution and further from the worst. For each bit, 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>r</mml:mi>
                                            <mml:mn>1</mml:mn>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> and 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>r</mml:mi>
                                            <mml:mn>2</mml:mn>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> are two random numbers generated from a uniform distribution in [0,1]. To promote exploration, mutation operator is applied with a mutation probability 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>p</mml:mi>
                                            <mml:mi mathvariant="italic">mut</mml:mi>
                                        </mml:msub>
                                        <mml:mo>&lt;</mml:mo>
                                        <mml:mn>0.2</mml:mn>
                                    </mml:math>
</inline-formula> as per the 
                                <xref ref-type="disp-formula" rid="e8">Eq. (3)</xref>. This mechanism helps the algorithm avoid premature convergence and escape local optima.</p>
                            <p>The best solution from the previous generation is preserved to ensure that it is not lost due to mutation or other updates. If 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mspace width="0.25em"/>
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mtext mathvariant="italic">best</mml:mtext>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> is not present in the current population after updates, it replaces the current worst solution.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Mechanism for Diversification</bold>
                            </p>
                            <p>To avoid premature convergence, Quasi-Reflection Reinitialization
                                <sup>
                                    <xref ref-type="bibr" rid="ref47">47</xref>
                                </sup> method is used. The population may get trapped in a local optimum, resulting in stagnation with no improvement in the best solution over multiple generations. To address this, we introduce such diversification strategies to explore new regions of the solution space that have not yet been examined. If the best fitness has not improved for 
                                <italic toggle="yes">P</italic>max consecutive generations, a diversification step is triggered. For each solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mspace width="0.25em"/>
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>, its opposite solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msubsup>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi mathvariant="italic">opp</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msubsup>
                                    </mml:math>
</inline-formula> is generated using 
                                <xref ref-type="disp-formula" rid="e10">Eq. (5)</xref>. If 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>f</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:msub>
                                                <mml:mi>X</mml:mi>
                                                <mml:mi mathvariant="italic">opp</mml:mi>
                                            </mml:msub>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                        <mml:mo>&gt;</mml:mo>
                                        <mml:mi>f</mml:mi>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>), then 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> is replaced with its opposite. This approach increases diversity and encourages exploration of unexplored regions of the search space.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Termination and Optimal Band Selection</bold>
                            </p>
                            <p>After updating and possibly mutating the population, the fitness values of the new candidate solutions are recalculated. The generation counter is then incremented (iter = iter + 1). The algorithm terminates when either the maximum number of generations 
                                <italic toggle="yes">G</italic> is reached or no improvement in the best solution is observed for 
                                <italic toggle="yes">P</italic>max consecutive generations. Finally, the algorithm returns the best solution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>X</mml:mi>
                                            <mml:mtext mathvariant="italic">best</mml:mtext>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> discovered during the search process. The optimal set of spectral bands is represented by this binary vector.</p>
                        </list-item>
                    </list>
                </p>
                <boxed-text id="B1" orientation="portrait" position="float">
                    <label>Algorithm 1. </label>
                    <caption>
                        <title>Enhanced JAYA algorithm for hyperspectral band selection.</title>
                    </caption>
                    <p>1: 
                        <bold>Initialize</bold> random population 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:msubsup>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">{</mml:mo>
                                        <mml:msub>
                                            <mml:mi>P</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                        <mml:mo stretchy="true">}</mml:mo>
                                    </mml:mrow>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>=</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                    <mml:mrow>
                                        <mml:mi mathvariant="italic">Pop</mml:mi>
                                        <mml:mo>_</mml:mo>
                                        <mml:mtext mathvariant="italic">size</mml:mtext>
                                    </mml:mrow>
                                </mml:msubsup>
                                <mml:mspace width="0.25em"/>
                            </mml:math>
</inline-formula>within bounds.</p>
                    <p>2: 
                        <bold>Generate</bold> opposite population 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>P</mml:mi>
                                        <mml:mo stretchy="true">&#x00af;</mml:mo>
                                    </mml:mover>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:math>
</inline-formula> using 
                        <xref ref-type="disp-formula" rid="e6">

                            <bold>Eq. (1)</bold>
                        </xref>
                        <bold>.</bold>
                    </p>
                    <p>3: 
                        <bold>Evaluate</bold> fitness values 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>f</mml:mi>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>P</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:math>
</inline-formula>) and 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>f</mml:mi>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mover accent="true">
                                        <mml:mi>P</mml:mi>
                                        <mml:mo stretchy="true">&#x00af;</mml:mo>
                                    </mml:mover>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:math>
</inline-formula>) for all 
                        <italic toggle="yes">i.</italic>
                    </p>
                    <p>4: 
                        <bold>Merge and Select</bold> best Pop_size individuals from 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mrow>
                                    <mml:mo stretchy="true">{</mml:mo>
                                    <mml:msub>
                                        <mml:mi>P</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo stretchy="true">}</mml:mo>
                                </mml:mrow>
                                <mml:mo>&#x222a;</mml:mo>
                                <mml:mrow>
                                    <mml:mo stretchy="true">{</mml:mo>
                                    <mml:msub>
                                        <mml:mover accent="true">
                                            <mml:mi>P</mml:mi>
                                            <mml:mo stretchy="true">&#x00af;</mml:mo>
                                        </mml:mover>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo stretchy="true">}</mml:mo>
                                </mml:mrow>
                            </mml:math>
</inline-formula>

                        <italic toggle="yes">.</italic>
                    </p>
                    <p>5: 
                        <bold>Set</bold> global best 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:msup>
                                    <mml:mi>P</mml:mi>
                                    <mml:mo>&#x2217;</mml:mo>
                                </mml:msup>
                            </mml:math>
</inline-formula> from initial population.</p>
                    <p>6: 
                        <bold>for</bold> each generation 
                        <italic toggle="yes">t</italic> = 0 to Max_iter 
                        <italic toggle="yes">&#x2212;</italic>1 
                        <bold>do</bold>
                    </p>
                    <p>

                        <bold>7:&#x2003;&#x2003;&#x2003;for each individual i = 1 to Pop_size do</bold>
                    </p>
                    <p>8:&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;
                        <bold>Compute fitness</bold>: fitness &#x2190; 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>f</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:msub>
                                        <mml:mi>P</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:math>
</inline-formula>
                    </p>
                    <p>9
                        <bold>:&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;Update solution using</bold> 
                        <xref ref-type="disp-formula" rid="e7">

                            <bold>Eq. (2)</bold>
                        </xref>
                    </p>
                    <p>

                        <bold>10:</bold>&#x2003;&#x2003;Compute adaptive mutation factor r using 
                        <xref ref-type="disp-formula" rid="e9">

                            <bold>Eq. (4)</bold>
                        </xref>
                    </p>
                    <p>11:&#x2003;&#x2003;if 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>r</mml:mi>
                                <mml:mo>&lt;</mml:mo>
                                <mml:mtext mathvariant="italic">mutation</mml:mtext>
                                <mml:mo>_</mml:mo>
                                <mml:mtext mathvariant="italic">rate</mml:mtext>
                                <mml:mspace width="0.25em"/>
                            </mml:math>
</inline-formula>then</p>
                    <p>12:&#x2003;&#x2003;&#x2003;&#x2003;
                        <bold>Perform mutation</bold> using 
                        <xref ref-type="disp-formula" rid="e8">

                            <bold>Eq. (3)</bold>
                        </xref>
                    </p>
                    <p>13:&#x2003;&#x2003;if 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mtext mathvariant="italic">current best fitness</mml:mtext>
                                <mml:mo>&gt;</mml:mo>
                                <mml:mi>f</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:msup>
                                        <mml:mi>P</mml:mi>
                                        <mml:mo>&#x2217;</mml:mo>
                                    </mml:msup>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:math>
</inline-formula> then</p>
                    <p>14:&#x2003;&#x2003;&#x2003;&#x2003;
                        <bold>Update</bold> 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:msup>
                                    <mml:mi mathvariant="bold-italic">P</mml:mi>
                                    <mml:mo mathvariant="bold-italic">&#x2217;</mml:mo>
                                </mml:msup>
                            </mml:math>
</inline-formula>
                    </p>
                    <p>15:&#x2003;&#x2003;&#x2003;&#x2003;noImprove &#x2190;0</p>
                    <p>16:&#x2003;&#x2003;else</p>
                    <p>17:&#x2003;&#x2003;&#x2003;&#x2003;noImprove &#x2190;noImprove+1</p>
                    <p>18:&#x2003;&#x2003;if noImprove &#x2265; patience then</p>
                    <p>19:&#x2003;&#x2003;&#x2003;
                        <bold>Quasi-Reinitialize
</bold> population using 
                        <xref ref-type="disp-formula" rid="e10">

                            <bold>Eq. (5)</bold>
                        </xref>
                    </p>
                    <p>20:&#x2003;&#x2003;&#x2003;
                        <bold>Re-evaluate
</bold> fitness values</p>
                    <p>21:&#x2003;&#x2003;&#x2003;noImprove &#x2190;0</p>
                    <p>22: 
                        <bold>Return best band subset</bold> encoded in P&#x2217;</p>
                </boxed-text>
                <p>The proposed Enhanced Jaya (EJaya) algorithm introduces several key innovations over the standard Jaya framework to effectively address the complexities of hyperspectral band selection. First, it uses opposition-based learning for initialization, second integrates a tailored mutation operator after the conventional Jaya update, introducing controlled randomness that enhances exploration without compromising Jaya&#x2019;s parameter-free simplicity. This is a novel extension, particularly within the band selection domain, where such mutation-based diversification is rarely incorporated. Third, EJaya employs a stagnation-aware reinitialization mechanism based on quasi-reflection or opposition-based learning, which dynamically diversifies the population by generating opposite or quasi-opposite solutions when improvement stalls. This helps the algorithm escape local optima and improves search robustness in high-dimensional spaces. Fourth, a multi-objective fitness function combining classification accuracy and spectral separability (Jeffries-Matusita distance) is used to guide selection, ensuring the resulting band subsets are both informative and non-redundant. Collectively, these enhancements preserve the lightweight nature of Jaya while significantly improving its exploration-exploitation balance, making EJaya a distinctive and powerful approach for hyperspectral band selection. A visual overview of the proposed methodology is shown in the 
                    <xref ref-type="fig" rid="f2">Figure 2</xref>.</p>
                <fig fig-type="figure" id="f2" orientation="portrait" position="float">
                    <label>
Figure 2. </label>
                    <caption>
                        <title>Flowchart of the proposed methodology.</title>
                    </caption>
                    <graphic id="gr2" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure2.gif"/>
                </fig>
            </sec>
        </sec>
        <sec id="sec13">
            <title>Experiment</title>
            <p>In this section, Indian Pines (IP),
                <sup>
                    <xref ref-type="bibr" rid="ref48">48</xref>
                </sup> Salinas Scene (SA),
                <sup>
                    <xref ref-type="bibr" rid="ref49">49</xref>
                </sup> and Pavia University,
                <sup>
                    <xref ref-type="bibr" rid="ref50">50</xref>
                </sup> which are three benchmark hyperspectral im-age (HSI) datasets are being used to evaluate the proposed approach. The 
                <xref ref-type="table" rid="T1">
Table 1</xref> outlines the details of these datasets. The study starts by introducing the datasets, and then provides a detailed analysis of the experiments conducted to identify the most suitable parameters for band selection. A comprehensive comparison was conducted to calculate the efficiency of the proposed algorithm against four other metaheuristic algorithms, emphasizing on overall classification accuracy (OA), average accuracy (AA) and individual class accuracy. Using Python 3.7 the algorithm is implemented, with the simulations performed on a system featuring an Intel Core i7-10870H CPU clocked at 2.21 GHz and 64 GB of RAM. For every dataset, the labeled pixels were split into training and testing sets, with 30% of the samples from each land-cover class randomly selected for training and the remaining 70% used for testing. The HSI data with selected bands were classified using a K-Nearest Neighbors (KNN) classifier. This procedure was carried out 30 times per dataset, and the average results were used for evaluation. In addition, four other metaheuristic-based feature selection techniques: Genetic Algorithm (GA),
                <sup>
                    <xref ref-type="bibr" rid="ref48">48</xref>
                </sup> Particle Swarm Optimization (PSO),
                <sup>
                    <xref ref-type="bibr" rid="ref21">21</xref>
                </sup> Grey Wolf Optimizer (GWO),
                <sup>
                    <xref ref-type="bibr" rid="ref21">21</xref>
                </sup> Modified Grey Wolf Optimization (MGWO)
                <sup>
                    <xref ref-type="bibr" rid="ref31">31</xref>
                </sup> and binary JAYA
                <sup>
                    <xref ref-type="bibr" rid="ref41">41</xref>
                </sup> were compared with the proposed method and are summarized in Table.
                <sup>
                    <xref ref-type="bibr" rid="ref4">4</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref6">6</xref>
                </sup>
            </p>
            <table-wrap id="T1" orientation="portrait" position="float">
                <label>
Table 1. </label>
                <caption>
                    <title>Summary of hyperspectral datasets used in the experiments.</title>
                </caption>
                <table content-type="article-table" frame="hsides">
                    <thead>
                        <tr>
                            <th align="left" colspan="1" rowspan="1" valign="top">Dataset</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Spatial dimension</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Bands</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Classes</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Wavelength (nm)</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Description</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">
Acquisition</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Indian Pines</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">145 &#x00d7;145</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">200</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">16</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">400&#x2013;2500</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Agriculture, forest land cover</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">AVIRIS (Airborne)</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Pavia University</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">610 &#x00d7; 340</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">103</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">9</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">430&#x2013;860</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Urban structures, roads</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">ROSIS (Airborne)</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Salinas</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">512 &#x00d7; 217</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">224</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">16</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">400&#x2013;2500</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Vegetation, bare soil</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">AVIRIS (Airborne)</td>
                        </tr>
                    </tbody>
                </table>
            </table-wrap>
            <sec id="sec14">
                <title>Dataset</title>
                <p>

                    <bold>
Indian Pines</bold>: The IP dataset is a significant benchmark in hyperspectral image classification. This is collected by the Airborne Visible Infrared Imaging Spectrometer (AVIRIS) in 1992, the data covers a 145 by 145 square area in Indian Pines, Indiana, USA. The sensor captures wavelengths between 0.4 and 2.5 micrometer. Approximately two-thirds of the area consists of agricultural fields, while the remaining portion features natural landscapes such as forests. The region also includes two major highways, a railway, a few scattered homes, and smaller roads. Since the images were taken in June, early growth of crops like corn and soybeans is visible. After excluding bands related to water absorption, the dataset consists of 200 spectral bands and 16 major land-cover categories, with less than 5% total coverage of the Indianpine dataset.</p>
                <p>

                    <bold>Pavia University</bold>: The Pavia University (PU) dataset, another key resource for hyperspectral image classification, was captured in 2002 using the ROSIS sensor. Initially containing 115 spectral bands and covering a 610 by 610-pixel area, the dataset was refined by removing less useful samples, resulting in 103 bands and an area of 610 by 340 pixels. The images have a spatial resolution of 1.3 meters and feature 9 distinct categories.</p>
                <p>

                    <bold>Salinas</bold>: The Salinas (SA) dataset was collected using the AVIRIS sensor over the Salinas Valley in California, USA. It consists of 224 spectral bands, covering an area of 512 lines by 217 samples, with a spatial resolution of 3.7 meters. Some bands (108&#x2013;112, 154&#x2013;167, and 224) were excluded due to water absorption. The dataset is presented as radiometric data from the sensor, covering categories such as vegetables, bare soil, and vineyards. In 
                    <xref ref-type="table" rid="T2">
Table 2</xref> the first row shows the different datasets, the second row lists the objective functions, which is followed by the Average Accuracy, Overall Accuracy, and the number of bands selected. The three columns present the results corresponding to each objective function. To determine the classification accuracy rate for all methods, the K-nearest neighbors&#x2019; technique is employed. It is evident that, for all the datasets evaluated, the model&#x2019;s average class accuracy and overall accuracy achieved using the objective function 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula> surpass those obtained with the other objective functions.</p>
                <table-wrap id="T2" orientation="portrait" position="float">
                    <label>
Table 2. </label>
                    <caption>
                        <title>Performance metrics (AA, OA, and number of bands) across different objective functions and datasets.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Dataset</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Objective</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Accuracy (AA/OA)</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
# Bands</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="3" valign="top">Indian Pines</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.85/86.76</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">88</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.86/86.79</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">100</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.86/87.72</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">52</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="3" valign="top">Pavia U</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91/93.35</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">48</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.90/92.45</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">50</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.92/93.64</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="3" valign="top">Salinas</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97/92.82</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">92</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.96/92.75</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">145</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <italic toggle="yes">f</italic>3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97/93.35</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">60</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>The outcomes achieved by the objective function (optimization function) 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula>, which combines accuracy and JM distance, are superior to those of the objective function 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula>, which uses accuracy and Hausdorff distance term, across all the hyperspectral images.</p>
                <p>
                    <xref ref-type="table" rid="T3">
Table 3</xref> demonstrates a performance comparison between KNN and EJaya across three benchmark hyperspectral datasets: Indian Pine, Pavia University, and Salinas Scene. Key metrics such as Average Class Accuracy, Model Accuracy, and Number of Bands highlight the advantages of the EJaya algorithm for hyperspectral band selection. The EJaya method consistently outperforms KNN by achieving higher accuracies across all datasets while significantly reducing the number of selected bands. This reduction enhances computational efficiency and focuses on the most informative spectral bands, thereby justifying the effectiveness of EJaya for hyperspectral image classification.</p>
                <table-wrap id="T3" orientation="portrait" position="float">
                    <label>
Table 3. </label>
                    <caption>
                        <title>Comparison of classification performance between KNN and EJAYA across hyperspectral datasets.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Dataset</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Method</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Accuracy (AA/OA (%))</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
# Bands</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Indian Pines</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">KNN</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">77.11/77.51</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">All</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">EJAYA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">86.00/87.72</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">52</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Pavia U</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">KNN</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">87.69/90.05</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">All</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">EJAYA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">92.00/93.64</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Salinas</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">KNN</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">95.20/90.50</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">All</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">EJAYA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">97.00/93.35</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">60</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>Four popular wrapper methods utilizing meta-heuristic algorithms are evaluated against our method for band selection: GA,
                    <sup>
                        <xref ref-type="bibr" rid="ref51">51</xref>
                    </sup> PSO,
                    <sup>
                        <xref ref-type="bibr" rid="ref21">21</xref>
                    </sup> GWO,
                    <sup>
                        <xref ref-type="bibr" rid="ref21">21</xref>
                    </sup> and Jaya.
                    <sup>
                        <xref ref-type="bibr" rid="ref41">41</xref>
                    </sup> On the objective function 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>3</mml:mn>
                            </mml:msub>
                        </mml:math>
</inline-formula> these meta-heuristic algorithms are applied. The experimental results show that PSO, GWO, and Jaya yield similar classification accuracy across all three hyperspectral datasets, while the EJaya algorithm consistently outperforms them.</p>
            </sec>
            <sec id="sec15">
                <title>Configuration of the proposed method&#x2019;s parameters</title>
                <p>In contrast to the Jaya
                    <sup>
                        <xref ref-type="bibr" rid="ref41">41</xref>
                    </sup> algorithm, which is highly effective at exploitation (refining solutions by steering them towards optimal results), our proposed algorithm enhances performance by incorporating the mutation operator. This addition enables the algorithm to strike a balance between exploration (global search) and exploitation through mutation. For the Enhanced Binary Jaya Algorithm, the population size is 30 and the maximum number of iterations is set to 100. The weight coefficients 
                    <italic toggle="yes">&#x03c9;A</italic>, 
                    <italic toggle="yes">&#x03c9;H</italic>, and 
                    <italic toggle="yes">&#x03c9;JM</italic> in the objective function are assigned a value of 1. The computation of 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mi>a</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>b</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> is carried out using a classifier system. For optimal results, the K-nearest neighbors (KNN) algorithm should be applied with K fixed at 5. The main advantage of the KNN algorithm is that it functions without requiring a training model. We recommend using 30% of the data for the training set and 70% for the test set. To avoid overfitting, different training and test sets are used. The training and test sets are generated randomly for each iteration of the algorithm.</p>
            </sec>
            <sec id="sec16">
                <title>Comparative analysis for Indian Pines dataset</title>
                <p>For the Indian Pines dataset 
                    <xref ref-type="table" rid="T4">
Table 4</xref> showcases the classification outcomes achieved through the proposed band selection approach, including overall accuracy, class-wise accuracy, and the average accuracy across all classes. In the same table, the classification outcomes of other competing methods are also presented for comparison. The outcome shows that the proposed method delivers superior performance, achieving the highest classification accuracy and surpassing other optimization techniques.</p>
                <table-wrap id="T4" orientation="portrait" position="float">
                    <label>
Table 4. </label>
                    <caption>
                        <title>Classification results for Indian Pines dataset across different metaheuristic algorithms.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Class</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">GA
                                    <sup>
                                        <xref ref-type="bibr" rid="ref48">48</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">GWO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref21">21</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">PSO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref21">21</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">MGWO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref31">31</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">JAYA
                                    <sup>
                                        <xref ref-type="bibr" rid="ref41">41</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
EJAYA</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Alfalfa</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.64</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.61</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.32</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.68</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.86</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Corn-no till</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.53</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.59</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.61</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.79</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.84</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Corn-min till</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.28</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.52</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.65</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.64</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.75</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.80</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Corn</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.15</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.45</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.46</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.78</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.64</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.76</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Grass-pasture
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.82</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Grass-tree
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.93</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Grass-pasture-mowed</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.17</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.85</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.76</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Hay-windrowed
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.96</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.96</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Oat</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.50</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.50</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.34</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.62</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.83</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Soybean-no till</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.60</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.71</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.75</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.85</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.86</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Soybean-min till</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.74</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.77</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Soybean-clean
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.32</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.44</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.59</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.72</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.65</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.71</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Wheat</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.96</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.90</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Woods</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.93</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.90</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Bldgs-grass-trees-drives
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.12</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.39</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.48</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.49</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.54</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.53</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Stone-steel towers</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.73</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.92</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.93</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">AA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">52.54</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">70.35</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">73.23</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">82.01</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">82.51</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>86.53</bold>
</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">64.86</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">70.65</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">74.55</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">84.08</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">85.09</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>87.72</bold>
</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">NBS (Bands)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">145</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">101</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">123</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">52</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>52</bold>
</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>In this study, overall accuracy (OA) is used as the objective function for evaluating fitness. As indicated in 
                    <xref ref-type="table" rid="T4">
Table 4</xref> the proposed method notably enhances class-wise classification accuracy as compared to other approaches. For example, the classification accuracy for &#x201c;Alfalfa&#x201d; increases by 0.86, &#x201c;Oats&#x201d; by 0.83, &#x201c;Corn-no till&#x201d; by 0.31, and &#x201c;Corn&#x201d; by 0.59 percent. However, the proposed method underperforms in certain individual classes, likely due to the fusion of spectral bands, which can obscure important spectral features of specific land-cover classes. Misclassification may also result from the spectral similarity between some land-cover classes, making differentiation more challenging. Despite these challenges, the overall accuracy (OA) of the Enhanced JAYA algorithm showed a marked improvement, increasing by 22.86%. In terms of aggregate performance, EJAYA achieves the highest Average Accuracy (AA) of 86.53% and the highest Overall Accuracy (OA) of 87.72%, both of which exceed the baseline JAYA, MGWO, and other conventional metaheuristics. Importantly, it does so while using only 52 spectral bands &#x2014; fewer than other algorithms demonstrating both efficiency and effectiveness. These results confirm the advantages of the proposed enhancements (mutation and quasi-reinitialization) in exploring the solution space more effectively and selecting more discriminative band subsets.</p>
            </sec>
            <sec id="sec17">
                <title>Comparative analysis for Pavia University dataset</title>
                <p>For the Pavia University dataset 
                    <xref ref-type="table" rid="T5">
Table 5</xref> displays the classification result achieved from the proposed band selection method, including metrics such as overall accuracy, per-class accuracy, and the mean accuracy across all classes. In the same table the classification outcomes of other competing methods are also presented for comparison. The out-come shows that the proposed method delivers superior performance, achieving the highest classification accuracy and surpassing other optimization techniques. In this study, overall accuracy (OA) is used as the objective function for evaluating fitness. As indicated in 
                    <xref ref-type="table" rid="T5">
Table 5</xref> the proposed method notably enhances class-wise classification accuracy as compared to other approaches. For example, the classification accuracy for &#x201c;Gravel&#x201d; increases by 0.37, and &#x201c;Bare Soil&#x201d; increases by 0.23 percent. However, the method exhibits lower performance for some individual classes, likely due to the fusion of spectral bands, which can obscure critical spectral features of certain land-cover types. Additionally, the spectral similarity between certain land-cover classes may cause difficulties in differentiation, leading to misclassification. Nevertheless, the overall accuracy (OA) of the Enhanced JAYA algorithm improved significantly, rising by 9.07%. In terms of aggregate metrics, EJAYA achieves the highest Average Accuracy (AA) of 92.10%, the second-highest Overall Accuracy (OA) of 93.64% (only slightly below MGWO at 93.76%), and uses the fewest number of bands (NBS = 26), outperforming JAYA (56), PSO (60), GA (82), and GWO (59).</p>
                <table-wrap id="T5" orientation="portrait" position="float">
                    <label>
Table 5. </label>
                    <caption>
                        <title>Classification results for Pavia University dataset across different metaheuristic algorithms.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Class</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">GA
                                    <sup>
                                        <xref ref-type="bibr" rid="ref48">48</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">GWO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref21">21</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">PSO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref21">21</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">MGWO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref31">31</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">JAYA
                                    <sup>
                                        <xref ref-type="bibr" rid="ref41">41</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
EJAYA</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Asphalt</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.83</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.93</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.93</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Meadows</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.95</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Gravel</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.44</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.68</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.73</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.74</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.78</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Trees</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.80</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.95</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.89</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Painted Metal Sheets</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Bare Soil</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.58</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.68</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.77</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.82</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Bitumen</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.75</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.83</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Self-Blocking Bricks</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.84</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.83</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.82</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.91</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.88</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Shadows</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">AA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">70.23</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">84.52</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">85.35</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">91.60</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">90.12</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>92.10</bold>
</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">84.57</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">87.24</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">87.38</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">93.76</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">92.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>93.64</bold>
</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">NBS (Bands)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">82</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">59</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">60</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">25</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">56</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>26</bold>
</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
            </sec>
            <sec id="sec18">
                <title>Comparative analysis for Salinas dataset</title>
                <p>For the Salinas dataset 
                    <xref ref-type="table" rid="T6">
Table 6</xref> states the classification results achieved with the proposed band selection technique, in-cluding overall accuracy, accuracy for each individual class, and the average accuracy across all classes. In the same table the classification outcomes of other competing methods are also presented for comparison. The outcome shows that the proposed method delivers superior performance, achieving the highest classification accuracy and surpassing other optimization techniques. In this study, overall accuracy (OA) is used as the objective function for evaluating fitness. In 
                    <xref ref-type="table" rid="T6">
Table 6</xref> it is indicated that the proposed method notably enhances class-wise classification accuracy as compared to other approaches. For example, the classification accuracy for &#x201c;Grapes untrained&#x201d; increased by 0.08, and &#x201c;Vineyard untrained&#x201d; rose increased by 0.14 percent. However, the method exhibits lower performance for some individual classes, likely due to the fusion of spectral bands, which can obscure critical spectral features of certain land-cover types. Additionally, the spectral similarity between certain land-cover classes may cause difficulties in differentiation, leading to misclassification. Nevertheless, the overall accuracy (OA) of the Enhanced JAYA algorithm improved significantly, rises by 4.78%. Classification results for the MGWO algorithm on the Salinas dataset were not available in the original publication and could not be reproduced due to the absence of implementation details and parameters. Therefore, MGWO is excluded from this comparison for this dataset.</p>
                <table-wrap id="T6" orientation="portrait" position="float">
                    <label>
Table 6. </label>
                    <caption>
                        <title>Classification results for Salinas dataset across different metaheuristic algorithms.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Class</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">GA
                                    <sup>
                                        <xref ref-type="bibr" rid="ref48">48</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">GWO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref21">21</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">PSO
                                    <sup>
                                        <xref ref-type="bibr" rid="ref21">21</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">MGWO
                                    <xref ref-type="table-fn" rid="tfn1">
                                        <sup>1</sup>
                                    </xref>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">JAYA
                                    <sup>
                                        <xref ref-type="bibr" rid="ref41">41</xref>
                                    </sup>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
EJAYA</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Broccoli green weeds 1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Broccoli green weeds 2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Fallow</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Fallow rough plow</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Fallow smooth</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.95</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Stubble</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Celery</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Grapes untrained</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.79</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.79</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.81</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.86</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.87</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Soil vineyard develop</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Corn green weeds</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.92</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.90</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.96</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.95</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Lettuce romaine 4wk</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.92</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Lettuce romaine 5wk</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Lettuce romaine 6wk</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Lettuce romaine 7wk</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.93</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Vineyard untrained</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.57</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.71</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.72</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Vineyard vertical trellis</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.98</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">AA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">93.19</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">96.23</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">96.45</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">96.32</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">97.75</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">88.57</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">90.80</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">91.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">92.06</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">93.35</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">NBS (Bands)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">150</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">145</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">120</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">-</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">102</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">60</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <fn-group content-type="footnotes">
                            <fn id="tfn1">
                                <label>
                                    <sup>1</sup>
                                </label>
                                <p>MGWO result not available.</p>
                            </fn>
                        </fn-group>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec19">
                <title>Result analysis</title>
                <p>The resulting graphs shown in 
                    <xref ref-type="fig" rid="f3">
Figure 3</xref> illustrate the classification accuracy obtained using five metaheuristic algorithms: Genetic Algorithm (GA), Particle Swarm Optimization (PSO), Grey Wolf Optimizer (GWO), Modified Grey Wolf (MGWO), Binary JAYA (BJAYA), and Enhanced JAYA (EJAYA)&#x2014;across three hyperspectral datasets. Land cover classes, together with Average Accuracy (AA) and Overall Accuracy (OA), are shown on the x-axes, while the y-axes present the classification accuracy. Performance of EJAYA in all three datasets, consistently outperforms the other algorithms, demonstrating its superior ability to optimize hyperspectral band selection for classification. By achieving the highest scores in both Average Accuracy (AA) and Overall Accuracy (OA), it is recognized as the most reliable method for classifying hyperspectral data. For Indian Pines Dataset EJAYA outperforms others in challenging classes like &#x201c;Alfalfa&#x201d; and &#x201c;Oats,&#x201d; with substantial improvements in accuracy compared to other algorithms. For Pavia University dataset EJAYA achieves the highest accuracy for difficult classes such as &#x201c;Shadows&#x201d; and maintains robust performance across all other classes. For Salinas dataset EJAYA excels in tough classes like &#x201c;Grapes Untrained&#x201d; and &#x201c;Soil Vineyard Develop&#x201d;, while also providing the best overall classification accuracy.</p>
                <fig fig-type="figure" id="f3" orientation="portrait" position="float">
                    <label>
Figure 3. </label>
                    <caption>
                        <title>Classification accuracy comparison across different classes for Indian Pines, Pavia University, and Salinas scene datasets.</title>
                    </caption>
                    <graphic id="gr3" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure3.gif"/>
                </fig>
                <p>The convergence curves shown in 
                    <xref ref-type="fig" rid="f4">
Figure 4</xref> indicate that our approach successfully achieved the global optimum across all three datasets. By visual analysis the ground truth map serves as a reference, representing the actual class distribution of the hyperspectral data. It is used to evaluate the accuracy of the algorithms. The classification map generated by JAYA shows a close approximation to the ground truth, but it exhibits some misclassifications in specific areas, especially in regions with overlapping spectral signatures. The EJAYA classification map demonstrates a more refined and accurate representation compared to JAYA, with fewer misclassified pixels. It captures the class boundaries more precisely, particularly in challenging areas. The classification maps for the Indian Pines, Pavia, and Salinas datasets&#x2014;produced using both the JAYA and EJAYA methods&#x2014;are shown in 
                    <xref ref-type="fig" rid="f5">
Figures 5</xref>, 
                    <xref ref-type="fig" rid="f6">6</xref>, and 
                    <xref ref-type="fig" rid="f7">7</xref>.</p>
                <fig fig-type="figure" id="f4" orientation="portrait" position="float">
                    <label>
Figure 4. </label>
                    <caption>
                        <title>Best fitness curve comparison for Indian Pines, Salinas Scene, and Pavia University datasets.</title>
                    </caption>
                    <graphic id="gr4" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure4.gif"/>
                </fig>
                <fig fig-type="figure" id="f5" orientation="portrait" position="float">
                    <label>
Figure 5. </label>
                    <caption>
                        <title>Classification map of Indian Pines dataset.</title>
                    </caption>
                    <graphic id="gr5" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure5.gif"/>
                </fig>
                <fig fig-type="figure" id="f6" orientation="portrait" position="float">
                    <label>
Figure 6. </label>
                    <caption>
                        <title>Classification map of Pavia University dataset.</title>
                    </caption>
                    <graphic id="gr6" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure6.gif"/>
                </fig>
                <fig fig-type="figure" id="f7" orientation="portrait" position="float">
                    <label>
Figure 7. </label>
                    <caption>
                        <title>Classification map of Salinas Scene dataset.</title>
                    </caption>
                    <graphic id="gr7" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure7.gif"/>
                </fig>
                <p>In 
                    <xref ref-type="fig" rid="f8">
Figure 8</xref> it highlights the variability in reflectance values across the selected bands for different pixels in different datasets. It showcases how distinct classes exhibit unique spectral patterns, which is particularly valuable for under-standing class-specific characteristics in hyperspectral data. This visualization aids in highlighting the most relevant bands that contribute to effectively separating different classes. By observing these patterns, effectiveness of band selection techniques and optimize classification performance can be evaluated.</p>
                <fig fig-type="figure" id="f8" orientation="portrait" position="float">
                    <label>
Figure 8. </label>
                    <caption>
                        <title>Comparison between spectrum of bands of different dataset.</title>
                    </caption>
                    <graphic id="gr8" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/184937/22ddc8c8-8f8b-4976-b522-a5f65a341c8d_figure8.gif"/>
                </fig>
            </sec>
            <sec id="sec20">
                <title>Ablation study</title>
                <p>To thoroughly evaluate the individual contributions of the components integrated into the proposed Enhanced JAYA (Ejaya) framework, an ablation study was carried out by selectively disabling two key strategies:
                    <list list-type="order">
                        <list-item>
                            <label>1.</label>
                            <p>

                                <bold>Opposition-Based Learning (OBL)</bold> mechanism, which aims to produce a uniformly distributed initial population.</p>
                        </list-item>
                        <list-item>
                            <label>2.</label>
                            <p>

                                <bold>Quasi-reflection Reinitialization Strategy</bold>, which is triggered when convergence stagnates or poor solutions persist, thereby supporting a balanced exploration&#x2013;exploitation process.</p>
                        </list-item>
                    </list>
                </p>
                <p>To facilitate this analysis, two simplified variants of Ejaya were constructed:
                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Ejaya-NOBL:</bold> This variant excludes the OBL mechanism in the initialization phase.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <bold>Ejaya-NQRI:</bold> This version removes the quasi-reflection reinitialization component.</p>
                        </list-item>
                    </list>
                </p>
                <p>The comparative outcomes of these variants along with the complete Ejaya method are summarized in 
                    <xref ref-type="table" rid="T7">
Table 7</xref>. To evaluate the effectiveness of the complete Ejaya method, Overall Accuracy (OA) and Number of Bands (NB) are employed as evaluation criteria.</p>
                <table-wrap id="T7" orientation="portrait" position="float">
                    <label>
Table 7. </label>
                    <caption>
                        <title>Ablation study results on Indian Pines, PaviaU, and Salinas datasets. Values are reported as mean &#x00b1; standard deviation.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Method</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Metric</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
Indian Pines</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">PaviaU</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
Salinas</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">EJaya</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA (%)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>87.28 &#x00b1; 0.21</bold>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>93.24 &#x00b1; 0.15</bold>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>92.92 &#x00b1; 0.10</bold>
</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">NB</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>51.89 &#x00b1; 2.18</bold>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>25.78 &#x00b1; 1.84</bold>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <bold>59.35 &#x00b1; 1.72</bold>
</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">EJaya-NOBL
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA (%)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">86.44 &#x00b1; 0.25</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">93.61 &#x00b1; 0.19</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">94.41 &#x00b1; 0.11</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">NB</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">70.12 &#x00b1; 2.21</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">38.91 &#x00b1; 2.01</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">75.51 &#x00b1; 2.00</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">EJaya-NQRI
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA (%)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">86.37 &#x00b1; 0.26</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">93.50 &#x00b1; 0.21</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">94.10 &#x00b1; 0.15</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">NB</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">78.22 &#x00b1; 2.31</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">45.12 &#x00b1; 2.08</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">88.32 &#x00b1; 1.78</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Jaya</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">OA (%)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">84.92 &#x00b1; 0.27</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">91.32 &#x00b1; 0.30</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">91.78 &#x00b1; 0.31</td>
                            </tr>
                            <tr>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">NB</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">88.41 &#x00b1; 2.42</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">55.21 &#x00b1; 2.19</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">101.91 &#x00b1; 2.21</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>The ablation results clearly indicate that the complete EJaya method achieves superior fitness values compared to its reduced counterparts. The performance decline in the OBL-removed version (NOBL) can be attributed to reduced population diversity, which increases the risk of premature convergence. Similarly, QRI-removed version (NQRI) strategy diminishes the algorithm&#x2019;s ability to recover from stagnation, thereby weakening its global search capability. Overall, these findings underscore the critical importance of both the OBL-based initialization and the Quasi-Reflection Reinitialization techniques, along with the mutation-based enhancements in the Jaya algorithm, in improving the effectiveness of band selection and enhancing classification accuracy.</p>
            </sec>
        </sec>
        <sec id="sec21" sec-type="conclusion">
            <title>Conclusion</title>
            <p>In this paper, we developed a band selection strategy designed to improve the time efficiency of hyperspectral image classification. The proposed method uses a parameter-free Jaya optimizer with a Differential Evolution mutation operator for band selection. It is further enhanced by opposition-based learning (OBL) initialization and Quasi-Reflection reinitialization to improve exploration and diversity. The objective of incorporation of mutation operator aims to balance the exploitation and exploration within the Jaya algorithm. This improvement of exploration in the Jaya algorithm leads to an enhancement of the optimal selection of minimal bands in the hyperspectral images. Furthermore, OBL and Quasi-Reflection reinitialization strategies employed to improve diversity of solutions in the population that enhance ac-curacy performance and band selection. This study evaluates three objective functions: classification accuracy and two measures of class separability&#x2014;the Hausdorff distance and the Jeffries&#x2013;Matusita distance. To showcase the effectiveness of our approach with three objective functions, we conducted experiments using three commonly used hyperspectral image datasets: Indian Pines, Pavia University, and Salinas Scenes. Performance of algorithms are measured using three criteria such as overall accuracy, average accuracy, and individual accuracy in KNN classifier. Our experimental results demonstrate that the objective function based on Accuracy and Jeffries-Matusita distance yields superior classification accuracy across the datasets.</p>
            <p>The effectiveness of the proposed method was also evaluated by comparing it with four contemporary techniques from the literature: Genetic Algorithm (GA), Particle Swarm Optimization (PSO), Grey Wolf Optimizer (GWO), and the standard Jaya algorithm. The reported results reveal that the effectiveness of the proposed approach against mentioned methods in terms of the KNN classification accuracy. For future work, we would study different hybridized metaheuristic algorithms to select a minimum subset of bands while preserving classifier performance in hyperspectral image analysis. Further, a novel CNN model could be designed to test our model for optimal band selection.</p>
            <sec id="sec22">
                <title>Ethics and consent</title>
                <p>Ethical approval and consent were not required.</p>
            </sec>
        </sec>
    </body>
    <back>
        <sec id="sec25" sec-type="data-availability">
            <title>Data availability</title>
            <sec id="sec26">
                <title>Underlying data</title>
                <p>Datasets used in our experiments are publicly available benchmark hyperspectral datasets. Indian Pines and Salinas datasets are available from the AVIRIS (Airborne Visible/Infrared Imaging Spectrometer) website, NASA Jet Propulsion Laboratory (JPL).</p>
                <p>Pavia University dataset is available from the Hyperspectral Remote Sensing Scenes (University of Pavia).</p>
                <p>As these datasets are freely accessible to the research community, we did not generate or own the raw data ourselves. Instead, we used the publicly available versions provided by the respective institutions, and our results (figures and tables) were derived from these datasets.</p>
                <p>The hyperspectral image datasets used in this study are publicly available and can be accessed as follows:
                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>
Indian Pines dataset is available from the Purdue University website at 
                                <ext-link ext-link-type="uri" xlink:href="http://www.ehu.eus/ccwintco/index.php/Hyperspectral_Remote_Sensing_Scenes#Indian_Pines">http://www.ehu.eus/ccwintco/index.php/Hyperspectral_Remote_Sensing_Scenes#Indian_Pines</ext-link>.
                                <sup>
                                    <xref ref-type="bibr" rid="ref48">48</xref>
                                </sup>
                            </p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>Salinas dataset is publicly available at the AVIRIS sensor data source 
                                <ext-link ext-link-type="uri" xlink:href="http://www.ehu.eus/ccwintco/index. php/Hyperspectral_Remote_Sensing_Scenes#Salinas">http://www.ehu.eus/ccwintco/index. php/Hyperspectral_Remote_Sensing_Scenes#Salinas</ext-link>.
                                <sup>
                                    <xref ref-type="bibr" rid="ref49">49</xref>
                                </sup>
                            </p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>Pavia University dataset can be obtained from the University of Pavia repository at 
                                <ext-link ext-link-type="uri" xlink:href="http://www.ehu.eus/ccwintco/index.php/Hyperspectral_Remote_Sensing_Scenes#Pavia_University">http://www.ehu.eus/ccwintco/index.php/Hyperspectral_Remote_Sensing_Scenes#Pavia_University</ext-link>.
                                <sup>
                                    <xref ref-type="bibr" rid="ref50">50</xref>
                                </sup>
                            </p>
                        </list-item>
                    </list>
                </p>
            </sec>
        </sec>
        <ack>
            <title>Acknowledgements</title>
            <p>The authors sincerely thank the Kalinga Institute of Industrial Technology, Bhubaneswar, for providing the necessary support and infrastructure that facilitated the publication of this article.</p>
        </ack>
        <ref-list>
            <title>References</title>
            <ref id="ref1">
                <label>1</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Khan</surname>
                            <given-names>MJ</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Khan</surname>
                            <given-names>HS</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Yousaf</surname>
                            <given-names>A</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Modern Trends in Hyper-spectral Image Analysis: A Review.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Access.</italic>
</source>
                    <year>2018</year>;<volume>6</volume>(<issue>c</issue>):<fpage>14118</fpage>&#x2013;<lpage>14129</lpage>.
                    <pub-id pub-id-type="doi">10.1109/ACCESS.2018.2812999</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref2">
                <label>2</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Sun</surname>
                            <given-names>W</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Qian</surname>
                            <given-names>D</given-names>
                        </name>
</person-group>:
                    <article-title>Hyperspectral band selection: A review.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Geoscience and Remote Sensing Magazine.</italic>
</source>
                    <year>2019</year>;<volume>7</volume>(<issue>2</issue>):<fpage>118</fpage>&#x2013;<lpage>139</lpage>.
                    <pub-id pub-id-type="doi">10.1109/MGRS.2019.2911100</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref3">
                <label>3</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Jun Li</surname>
                            <given-names>X</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Esquerre</surname>
                            <given-names>C</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Sun</surname>
                            <given-names>DW</given-names>
                        </name>
</person-group>:
                    <article-title>Methods for performing dimensionality reduction in hyperspectral image classification.</article-title>
                    <source>

                        <italic toggle="yes">J. Near Infrared Spectrosc.</italic>
</source>
                    <year>2018</year>;<volume>26</volume>(<issue>1</issue>):<fpage>61</fpage>&#x2013;<lpage>75</lpage>.</mixed-citation>
            </ref>
            <ref id="ref4">
                <label>4</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Sawant</surname>
                            <given-names>SS</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Prabukumar</surname>
                            <given-names>M</given-names>
                        </name>
</person-group>:
                    <chapter-title>Semi-supervised techniques based hyper-spectral image classification: A survey.</chapter-title>
                    <source>

                        <italic toggle="yes">2017 Innovations in Power and Advanced Computing Technologies, i-PACT 2017.</italic>
</source>
                    <year>2017-Janua</year>;<fpage>1</fpage>&#x2013;<lpage>8</lpage>. 2017.</mixed-citation>
            </ref>
            <ref id="ref5">
                <label>5</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Gewali</surname>
                            <given-names>UB</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Monteiro</surname>
                            <given-names>ST</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Saber</surname>
                            <given-names>E</given-names>
                        </name>
</person-group>:
                    <article-title>Machine learning based hyperspectral image analysis: a survey.</article-title>
                    <source>

                        <italic toggle="yes">arXiv preprint arXiv:1802.08701</italic>
</source>
                    <year>2018</year>.</mixed-citation>
            </ref>
            <ref id="ref6">
                <label>6</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Pal</surname>
                            <given-names>M</given-names>
                        </name>
</person-group>:
                    <article-title>Random forest classifier for remote sensing classification.</article-title>
                    <source>

                        <italic toggle="yes">Int. J. Remote Sens.</italic>
</source>
                    <year>2005</year>;<volume>26</volume>(<issue>1</issue>):<fpage>217</fpage>&#x2013;<lpage>222</lpage>.
                    <pub-id pub-id-type="doi">10.1080/01431160412331269698</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref7">
                <label>7</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Maldonado</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Weber</surname>
                            <given-names>R</given-names>
                        </name>
</person-group>:
                    <article-title>A wrapper method for feature selection using Support Vector Machines.</article-title>
                    <source>

                        <italic toggle="yes">Inf. Sci.</italic>
</source>
                    <year>2009</year>;<volume>179</volume>(<issue>13</issue>):<fpage>2208</fpage>&#x2013;<lpage>2217</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.ins.2009.02.014</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref8">
                <label>8</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Kherif</surname>
                            <given-names>F</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Latypova</surname>
                            <given-names>A</given-names>
                        </name>
</person-group>:
                    <article-title>Principal component analysis.</article-title>
                    <source>

                        <italic toggle="yes">Machine Learning: Methods and Applications to Brain Disorders.</italic>
</source>
                    <year>2019</year>;<volume>1</volume>(<issue>C</issue>):<fpage>209</fpage>&#x2013;<lpage>225</lpage>.
                    <pub-id pub-id-type="doi">10.1016/B978-0-12-815739-8.00012-2</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref9">
                <label>9</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Yang</surname>
                            <given-names>J</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Honavar</surname>
                            <given-names>V</given-names>
                        </name>
</person-group>:
                    <article-title>Feature subset selection using genetic algorithm.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Intelligent Systems and Their Applications.</italic>
</source>
                    <year>1998</year>;<volume>13</volume>(<issue>2</issue>):<fpage>44</fpage>&#x2013;<lpage>49</lpage>.
                    <pub-id pub-id-type="doi">10.1109/5254.671091</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref10">
                <label>10</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Nneschi</surname>
                            <given-names>RE</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Kennedy</surname>
                            <given-names>LJ</given-names>
                        </name>
</person-group>:
                    <chapter-title>Particle Swarm Optimization.</chapter-title>
                    <source>

                        <italic toggle="yes">Proceedings of ICNN&#x2019;95-international conference on neural networks.</italic>
</source>
                    <year>1995</year>; pp.<fpage>105</fpage>&#x2013;<lpage>111</lpage>.</mixed-citation>
            </ref>
            <ref id="ref11">
                <label>11</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Mirjalili</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mirjalili</surname>
                            <given-names>SM</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Lewis</surname>
                            <given-names>A</given-names>
                        </name>
</person-group>:
                    <article-title>Grey Wolf Optimizer.</article-title>
                    <source>

                        <italic toggle="yes">Adv. Eng. Softw.</italic>
</source>
                    <year>2014</year>;<volume>69</volume>:<fpage>46</fpage>&#x2013;<lpage>61</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.advengsoft.2013.12.007</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref12">
                <label>12</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Wang</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Wan</surname>
                            <given-names>Y</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Ye</surname>
                            <given-names>Z</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A band selection method for airborne hyperspectral image based on chaotic binary coded gravitational search algorithm.</article-title>
                    <source>

                        <italic toggle="yes">Neurocomputing.</italic>
</source>
                    <year>2018</year>;<volume>273</volume>:<fpage>57</fpage>&#x2013;<lpage>67</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.neucom.2017.07.059</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref13">
                <label>13</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Shukla</surname>
                            <given-names>UP</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Nanda</surname>
                            <given-names>SJ</given-names>
                        </name>
</person-group>:
                    <article-title>A Binary Social Spider Optimization algorithm for unsupervised band selection in compressed hyperspectral images.</article-title>
                    <source>

                        <italic toggle="yes">Expert Syst. Appl.</italic>
</source>
                    <year>2018</year>;<volume>97</volume>:<fpage>336</fpage>&#x2013;<lpage>356</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.eswa.2017.12.034</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref14">
                <label>14</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Yang</surname>
                            <given-names>Z</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Guo</surname>
                            <given-names>Y</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Niu</surname>
                            <given-names>Q</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <chapter-title>A Novel Binary Jaya Optimization for Economic/Emission Unit Commitment.</chapter-title>
                    <source>

                        <italic toggle="yes">2018 IEEE Congress on Evolutionary Computation, CEC 2018 - Proceedings.</italic>
</source>
                    <publisher-name>Institute of Electrical and Electronics Engineers Inc.</publisher-name>;<year>sep 2018</year>.</mixed-citation>
            </ref>
            <ref id="ref15">
                <label>15</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Qi</surname>
                            <given-names>C</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Zhou</surname>
                            <given-names>Z</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Sun</surname>
                            <given-names>Y</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Feature selection and multiple kernel boosting framework based on PSO with mutation mechanism for hyperspectral classification.</article-title>
                    <source>

                        <italic toggle="yes">Neurocomputing.</italic>
</source>
                    <year>2017</year>;<volume>220</volume>:<fpage>181</fpage>&#x2013;<lpage>190</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.neucom.2016.05.103</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref16">
                <label>16</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="editor">

                        <name name-style="western">
                            <surname>Abraham</surname>
                            <given-names>A</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Gandhi</surname>
                            <given-names>AKCPMN</given-names>
                        </name>
</person-group>, editors.
                    <article-title>Intelligent Systems Design and Applications.</article-title>
                    <year>2018</year>; volume<volume>2</volume>.</mixed-citation>
            </ref>
            <ref id="ref17">
                <label>17</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Masoudi-Sobhanzadeh</surname>
                            <given-names>Y</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Motieghader</surname>
                            <given-names>H</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Masoudi-Nejad</surname>
                            <given-names>A</given-names>
                        </name>
</person-group>:
                    <article-title>FeatureSelect: A software for feature selection based on machine learning approaches.</article-title>
                    <source>

                        <italic toggle="yes">BMC Bioinformatics.</italic>
</source>
                    <year>2019</year>;<volume>20</volume>(<issue>1</issue>):<fpage>1</fpage>&#x2013;<lpage>17</lpage>.</mixed-citation>
            </ref>
            <ref id="ref18">
                <label>18</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Hussain</surname>
                            <given-names>K</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Salleh</surname>
                            <given-names>MNM</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Cheng</surname>
                            <given-names>S</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Metaheuristic research: a comprehensive survey.</article-title>
                    <source>

                        <italic toggle="yes">Artif. Intell. Rev.</italic>
</source>
                    <year>2019</year>;<volume>52</volume>(<issue>4</issue>):<fpage>2191</fpage>&#x2013;<lpage>2233</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s10462-017-9605-z</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref19">
                <label>19</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Aghaee</surname>
                            <given-names>R</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Momeni</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Moallem</surname>
                            <given-names>P</given-names>
                        </name>
</person-group>:
                    <article-title>Semisupervised band selection from hyperspectral images using levy flight-based genetic algorithm.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Geosci. Remote Sens. Lett.</italic>
</source>
                    <year>2022</year>;<volume>19</volume>:<fpage>1</fpage>&#x2013;<lpage>5</lpage>.
                    <pub-id pub-id-type="doi">10.1109/LGRS.2022.3147272</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref20">
                <label>20</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Hongjun</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Qian</surname>
                            <given-names>D</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Chen</surname>
                            <given-names>G</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Optimized hyperspectral band selection using particle swarm optimization.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing.</italic>
</source>
                    <year>2014</year>;<volume>7</volume>(<issue>6</issue>):<fpage>2659</fpage>&#x2013;<lpage>2670</lpage>.</mixed-citation>
            </ref>
            <ref id="ref21">
                <label>21</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Medjahed</surname>
                            <given-names>SA</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Ait Saadi</surname>
                            <given-names>T</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Benyettou</surname>
                            <given-names>A</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Gray wolf optimizer for hyperspectral band selection.</article-title>
                    <source>

                        <italic toggle="yes">Appl. Soft Comput.</italic>
</source>
                    <year>2016</year>;<volume>40</volume>:<fpage>178</fpage>&#x2013;<lpage>186</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.asoc.2015.09.045</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref22">
                <label>22</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Crepinsek</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Liu</surname>
                            <given-names>SH</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mernik</surname>
                            <given-names>M</given-names>
                        </name>
</person-group>:
                    <article-title>Exploration and exploitation in evolutionary algorithms: A survey.</article-title>
                    <source>

                        <italic toggle="yes">ACM Comput. Surv.</italic>
</source>
                    <year>2013</year>;<volume>45</volume>(<issue>3</issue>):<fpage>1</fpage>&#x2013;<lpage>33</lpage>.
                    <pub-id pub-id-type="doi">10.1145/2480741.2480752</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref23">
                <label>23</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Aghaee</surname>
                            <given-names>R</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Momeni</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Moallem</surname>
                            <given-names>P</given-names>
                        </name>
</person-group>:
                    <article-title>A fusion-based approach to improve hyperspectral images&#x2019; classification using metaheuristic band selection.</article-title>
                    <source>

                        <italic toggle="yes">Appl. Soft Comput.</italic>
</source>
                    <year>2023</year>;<volume>148</volume>:<fpage>110753</fpage>.
                    <pub-id pub-id-type="doi">10.1016/j.asoc.2023.110753</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref24">
                <label>24</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Venkata Rao</surname>
                            <given-names>R</given-names>
                        </name>
</person-group>:
                    <article-title>Jaya: A simple and new optimization algorithm for solving constrained and unconstrained optimization problems.</article-title>
                    <source>

                        <italic toggle="yes">Int. J. Ind. Eng. Comput.</italic>
</source>
                    <year>2016</year>;<volume>7</volume>(<issue>1</issue>):<fpage>19</fpage>&#x2013;<lpage>34</lpage>.</mixed-citation>
            </ref>
            <ref id="ref25">
                <label>25</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Tizhoosh</surname>
                            <given-names>HR</given-names>
                        </name>
</person-group>:
                    <chapter-title>Opposition-based learning: a new scheme for machine intelligence.</chapter-title>
                    <source>

                        <italic toggle="yes">International conference on com-putational intelligence for modelling, control and automation and international conference on intelligent agents, web technologies and internet commerce (CIMCA-IAWTIC&#x2019;06).</italic>
</source>
                    <publisher-name>IEEE</publisher-name>;<year>2005</year>; volume<volume>1</volume>: pp.<fpage>695</fpage>&#x2013;<lpage>701</lpage>.</mixed-citation>
            </ref>
            <ref id="ref26">
                <label>26</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Qingzheng</surname>
                            <given-names>X</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Wang</surname>
                            <given-names>L</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Wang</surname>
                            <given-names>N</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A review of opposition-based learning from 2005 to 2012.</article-title>
                    <source>

                        <italic toggle="yes">Eng. Appl. Artif. Intell.</italic>
</source>
                    <year>2014</year>;<volume>29</volume>:<fpage>1</fpage>&#x2013;<lpage>12</lpage>.</mixed-citation>
            </ref>
            <ref id="ref27">
                <label>27</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Sawant</surname>
                            <given-names>SS</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Manoharan</surname>
                            <given-names>P</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Loganathan</surname>
                            <given-names>A</given-names>
                        </name>
</person-group>:
                    <article-title>Band selection strategies for hyperspectral image classification based on machine learning and artificial intelligent techniques&#x2013;survey.</article-title>
                    <source>

                        <italic toggle="yes">Arab. J. Geosci.</italic>
</source>
                    <year>2021</year>;<volume>14</volume>:<fpage>1</fpage>&#x2013;<lpage>10</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s12517-021-06984-w</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref28">
                <label>28</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Li</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Hao</surname>
                            <given-names>W</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Wan</surname>
                            <given-names>D</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>An effective feature selection method for hyperspectral image classification based on genetic algorithm and support vector machine.</article-title>
                    <source>

                        <italic toggle="yes">Knowl.-Based Syst.</italic>
</source>
                    <year>2011</year>;<volume>24</volume>(<issue>1</issue>):<fpage>40</fpage>&#x2013;<lpage>48</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.knosys.2010.07.003</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref29">
                <label>29</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Reddy</surname>
                            <given-names>TS</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Harikiran</surname>
                            <given-names>J</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Chandana</surname>
                            <given-names>BS</given-names>
                        </name>
</person-group>:
                    <chapter-title>Multi-objective genetic algorithm for hyperspectral image analysis.</chapter-title>
                    <source>

                        <italic toggle="yes">Smart Computing Techniques and Applications: Proceedings of the Fourth International Conference on Smart Computing and Informatics.</italic>
</source>
                    <publisher-name>Springer</publisher-name>;<year>2021</year>; Volume<volume>1</volume>: pp.<fpage>633</fpage>&#x2013;<lpage>641</lpage>.</mixed-citation>
            </ref>
            <ref id="ref30">
                <label>30</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Zhang</surname>
                            <given-names>Y</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Lin</surname>
                            <given-names>Q</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Li</surname>
                            <given-names>L</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Multiobjective band selection approach via an adaptive particle swarm optimizer for remote sensing hyperspectral images.</article-title>
                    <source>

                        <italic toggle="yes">Swarm and Evolutionary Computation.</italic>
</source>
                    <year>2024</year>;<volume>89</volume>:<fpage>101614</fpage>.
                    <pub-id pub-id-type="doi">10.1016/j.swevo.2024.101614</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref31">
                <label>31</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Wang</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Liu</surname>
                            <given-names>W</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Chen</surname>
                            <given-names>M</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A band selection approach based on a modified gray wolf optimizer and weight updating of bands for hyperspectral image.</article-title>
                    <source>

                        <italic toggle="yes">Appl. Soft Comput.</italic>
</source>
                    <year>2021</year>;<volume>112</volume>:<fpage>107805</fpage>.
                    <pub-id pub-id-type="doi">10.1016/j.asoc.2021.107805</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref32">
                <label>32</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Wang</surname>
                            <given-names>Y</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Zhu</surname>
                            <given-names>Q</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Ma</surname>
                            <given-names>H</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A hybrid gray wolf optimizer for hyperspectral image band selection.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Trans. Geosci. Remote Sens.</italic>
</source>
                    <year>2022</year>;<volume>60</volume>:<fpage>1</fpage>&#x2013;<lpage>13</lpage>.
                    <pub-id pub-id-type="doi">10.1109/TGRS.2022.3167888</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref33">
                <label>33</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Gao</surname>
                            <given-names>J</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Qian</surname>
                            <given-names>D</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Lianru Gao</surname>
                            <given-names>X</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Ant colony optimization-based supervised and unsupervised band selections for hyperspectral urban data classification.</article-title>
                    <source>

                        <italic toggle="yes">J. Appl. Remote. Sens.</italic>
</source>
                    <year>2014</year>;<volume>8</volume>(<issue>1</issue>):<fpage>085094</fpage>&#x2013;<lpage>085094</lpage>.</mixed-citation>
            </ref>
            <ref id="ref34">
                <label>34</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Ding</surname>
                            <given-names>X</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Li</surname>
                            <given-names>H</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Yang</surname>
                            <given-names>J</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>An improved ant colony algorithm for optimized band selection of hyperspectral remotely sensed imagery.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Access.</italic>
</source>
                    <year>2020</year>;<volume>8</volume>:<fpage>25789</fpage>&#x2013;<lpage>25799</lpage>.
                    <pub-id pub-id-type="doi">10.1109/ACCESS.2020.2971327</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref35">
                <label>35</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Chowdhury</surname>
                            <given-names>AR</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Hazra</surname>
                            <given-names>J</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Dasgupta</surname>
                            <given-names>K</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Fuzzy rule-based hyperspectral band selection algorithm with ant colony optimization.</article-title>
                    <source>

                        <italic toggle="yes">Innov. Syst. Softw. Eng.</italic>
</source>
                    <year>2024</year>;<volume>20</volume>(<issue>2</issue>):<fpage>161</fpage>&#x2013;<lpage>174</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s11334-021-00432-4</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref36">
                <label>36</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Worch</surname>
                            <given-names>E</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Samiappan</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Zhou</surname>
                            <given-names>M</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <chapter-title>Hyperspectral band selection using moth-flame meta heuristic optimization.</chapter-title>
                    <source>

                        <italic toggle="yes">IGARSS 2020-2020 IEEE International Geoscience and Remote Sensing Symposium.</italic>
</source>
                    <publisher-name>IEEE</publisher-name>;<year>2020</year>; pp.<fpage>1271</fpage>&#x2013;<lpage>1274</lpage>.</mixed-citation>
            </ref>
            <ref id="ref37">
                <label>37</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Anand</surname>
                            <given-names>R</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Samiaappan</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Veni</surname>
                            <given-names>S</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Airborne hyperspectral imagery for band selection using moth&#x2013;flame metaheuristic optimization.</article-title>
                    <source>

                        <italic toggle="yes">Journal of Imaging.</italic>
</source>
                    <year>2022</year>;<volume>8</volume>(<issue>5</issue>):<fpage>126</fpage>.
                    <pub-id pub-id-type="pmid">35621891</pub-id>
                    <pub-id pub-id-type="doi">10.3390/jimaging8050126</pub-id>
                    <pub-id pub-id-type="pmcid">PMC9144346</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref38">
                <label>38</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Chen</surname>
                            <given-names>T</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Sun</surname>
                            <given-names>Y</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Chen</surname>
                            <given-names>H</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Enhanced wild horse optimizer with cauchy mutation and dynamic random search for hyperspectral image band selection.</article-title>
                    <source>

                        <italic toggle="yes">Electronics.</italic>
</source>
                    <year>2024</year>;<volume>13</volume>(<issue>10</issue>):<fpage>1930</fpage>.
                    <pub-id pub-id-type="doi">10.3390/electronics13101930</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref39">
                <label>39</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Nanda</surname>
                            <given-names>SJ</given-names>
                        </name>
</person-group>:
                    <article-title>Band selection in hyperspectral image with chaotic binary moclonal algorithm.</article-title>
                    <source>

                        <italic toggle="yes">SN Computer Science.</italic>
</source>
                    <year>2022</year>;<volume>3</volume>(<issue>5</issue>):<fpage>410</fpage>.
                    <pub-id pub-id-type="doi">10.1007/s42979-022-01314-7</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref40">
                <label>40</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Otgonbaatar</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Datcu</surname>
                            <given-names>M</given-names>
                        </name>
</person-group>:
                    <article-title>A quantum annealer for subset feature selection and the classification of hyper spectral images.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing.</italic>
</source>
                    <year>2021</year>;<volume>14</volume>:<fpage>7057</fpage>&#x2013;<lpage>7065</lpage>.
                    <pub-id pub-id-type="doi">10.1109/JSTARS.2021.3095377</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref41">
                <label>41</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Sarangi</surname>
                            <given-names>PP</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Behera</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mishra</surname>
                            <given-names>BSP</given-names>
                        </name>
</person-group>:
                    <chapter-title>Enhancing Hyperspectral Band Selection using Jaya Optimization Algorithm.</chapter-title>
                    <source>

                        <italic toggle="yes">Enhancing Hyperspectral Band Selection using Jaya Optimization Algorithm.</italic>
</source>
                    <year>2023</year>; pp.<fpage>412</fpage>&#x2013;<lpage>416</lpage>.</mixed-citation>
            </ref>
            <ref id="ref42">
                <label>42</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Mostafa</surname>
                            <given-names>RR</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Khedr</surname>
                            <given-names>AM</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Al Aghbari</surname>
                            <given-names>Z</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>An adaptive hybrid mutated differential evolution feature selection method for low and high-dimensional medical datasets.</article-title>
                    <source>

                        <italic toggle="yes">Knowl.-Based Syst.</italic>
</source>
                    <year>2024</year>;<volume>283</volume>:<fpage>111218</fpage>.
                    <pub-id pub-id-type="doi">10.1016/j.knosys.2023.111218</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref43">
                <label>43</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Chandrashekar</surname>
                            <given-names>G</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Sahin</surname>
                            <given-names>F</given-names>
                        </name>
</person-group>:
                    <article-title>A survey on feature selection methods.</article-title>
                    <source>

                        <italic toggle="yes">Comput. Electr. Eng.</italic>
</source>
                    <year>2014</year>;<volume>40</volume>(<issue>1</issue>):<fpage>16</fpage>&#x2013;<lpage>28</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.compeleceng.2013.11.024</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref44">
                <label>44</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Bruzzone</surname>
                            <given-names>L</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Roli</surname>
                            <given-names>F</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Serpico</surname>
                            <given-names>SB</given-names>
                        </name>
</person-group>:
                    <article-title>An extension of the jeffreys-matusita distance to multiclass cases for feature selection.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Trans. Geosci. Remote Sens.</italic>
</source>
                    <year>1995</year>;<volume>33</volume>(<issue>6</issue>):<fpage>1318</fpage>&#x2013;<lpage>1321</lpage>.
                    <pub-id pub-id-type="doi">10.1109/36.477187</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref45">
                <label>45</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Sen</surname>
                            <given-names>R</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Goswami</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mandal</surname>
                            <given-names>AK</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>An effective feature subset selection approach based on jeffries-matusita distance for multiclass problems.</article-title>
                    <source>

                        <italic toggle="yes">J. Intell. Fuzzy Syst.</italic>
</source>
                    <year>2022</year>;<volume>42</volume>(<issue>4</issue>):<fpage>4173</fpage>&#x2013;<lpage>4190</lpage>.
                    <pub-id pub-id-type="doi">10.3233/JIFS-202796</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref46">
                <label>46</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Huttenlocher</surname>
                            <given-names>DP</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Klanderman</surname>
                            <given-names>GA</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Rucklidge</surname>
                            <given-names>WJ</given-names>
                        </name>
</person-group>:
                    <article-title>Comparing images using the hausdorff distance.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Trans. Pattern Anal. Mach. Intell.</italic>
</source>
                    <year>1993</year>;<volume>15</volume>(<issue>9</issue>):<fpage>850</fpage>&#x2013;<lpage>863</lpage>.
                    <pub-id pub-id-type="doi">10.1109/34.232073</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref47">
                <label>47</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Ye</surname>
                            <given-names>Z</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Cai</surname>
                            <given-names>W</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Liu</surname>
                            <given-names>S</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A band selection approach for hyperspectral image based on a modified hybrid rice optimization algorithm.</article-title>
                    <source>

                        <italic toggle="yes">Symmetry.</italic>
</source>
                    <year>2022</year>;<volume>14</volume>(<issue>7</issue>):<fpage>1293</fpage>.
                    <pub-id pub-id-type="doi">10.3390/sym14071293</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref48">
                <label>48</label>
                <mixed-citation publication-type="other">
                    <collab>Purdue University MultiSpec Team</collab>:
                    <article-title>Indian pines hyperspectral dataset. Collected by NASA&#x2019;s AVIRIS sensor and distributed via Purdue University&#x2019;s MultiSpec tool.</article-title>
                    <year>1992</year>.
                    <ext-link ext-link-type="uri" xlink:href="https://engineering.purdue.edu/biehl/MultiSpec/">Reference Source</ext-link>
                </mixed-citation>
            </ref>
            <ref id="ref49">
                <label>49</label>
                <mixed-citation publication-type="other">
                    <collab>NASA Jet Propulsion Laboratory</collab>:
                    <article-title>Salinas Hyperspectral Dataset.</article-title>
                    <year>1998</year>.
                    <ext-link ext-link-type="uri" xlink:href="https://www.ehu.eus/ccwintco/index.php/Hyperspectral_Remote_Sensing_Scenes">Reference Source</ext-link>
                </mixed-citation>
            </ref>
            <ref id="ref50">
                <label>50</label>
                <mixed-citation publication-type="other">
                    <collab>University of Pavia</collab>:
                    <article-title>Pavia University Hyperspectral Dataset.</article-title>
                    <year>2001</year>.
                    <ext-link ext-link-type="uri" xlink:href="https://www.ehu.eus/ccwintco/index.php/Hyperspectral_Remote_Sensing_Scenes">Reference Source</ext-link>
                </mixed-citation>
            </ref>
            <ref id="ref51">
                <label>51</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Medjahed</surname>
                            <given-names>SA</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Saadi</surname>
                            <given-names>TA</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Benyettou</surname>
                            <given-names>A</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Binary cuckoo search algorithm for band selection in hyperspectral image classification.</article-title>
                    <source>

                        <italic toggle="yes">IAENG Int. J. Comput. Sci.</italic>
</source>
                    <year>2015</year>;<volume>42</volume>(<issue>3</issue>):<fpage>183</fpage>&#x2013;<lpage>191</lpage>.</mixed-citation>
            </ref>
        </ref-list>
    </back>
    <sub-article article-type="reviewer-report" id="report419016">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.184937.r419016</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Barpanda</surname>
                        <given-names>Soubhagya Sankar</given-names>
                    </name>
                    <xref ref-type="aff" rid="r419016a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r419016a1">
                    <label>1</label>VIT-AP University, Vijayawada, Andhra Pradesh, India</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>3</day>
                <month>11</month>
                <year>2025</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2025 Barpanda SS</copyright-statement>
                <copyright-year>2025</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport419016" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.167794.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>The manuscript entitled &#x201c;Enhanced Jaya Algorithm with Mutation and Diversity-Preserving Strategies for Hyperspectral Band Selection&#x201d; presents a well-written and technically sound study. The proposed EJaya algorithm demonstrates clear improvements over existing metaheuristics and is evaluated on three widely used hyperspectral datasets. The paper is relevant and of interest to the remote sensing and machine learning community. Overall, the manuscript is suitable for indexing after minor revisions. My detailed comments are as follows:</p>
            <p> 
                <bold>1. Clarity &amp; Presentation</bold> 
                <list list-type="bullet">
                    <list-item>
                        <p>Improve figure captions, especially for Figures 2&#x2013;7. Captions should be more descriptive (e.g., &#x201c;Classification map of Indian Pines dataset using KNN, Jaya, and EJaya&#x201d; instead of just &#x201c;Classification Map&#x201d;).</p>
                    </list-item>
                </list> 
                <bold>2. Methodology</bold> 
                <list list-type="bullet">
                    <list-item>
                        <p>It would be helpful to provide a summary table of all experimental parameters (population size, iterations, mutation factor, K for KNN, etc.) in one place for easy reference.</p>
                    </list-item>
                    <list-item>
                        <p>A short note on the computational cost or runtime complexity of EJaya compared with GA/PSO/Jaya would add clarity. Even approximate runtime per dataset would be valuable.</p>
                    </list-item>
                </list> 
                <bold>3. References &amp; Language</bold> 
                <list list-type="bullet">
                    <list-item>
                        <p>Please check for minor typos (e.g., &#x201c;Opposition-Based Leaning&#x201d; should be &#x201c;Learning&#x201d;).</p>
                    </list-item>
                    <list-item>
                        <p>Ensure consistent use of acronyms (EJaya, OBL, QRI, OA/AA, etc.) throughout the text.</p>
                    </list-item>
                    <list-item>
                        <p>It would strengthen the Related Work section to include one or two more recent references (2023&#x2013;2024) on metaheuristics for hyperspectral band selection.</p>
                    </list-item>
                </list> 
                <bold>Recommendation: Minor Revision</bold>
            </p>
            <p> The manuscript is strong in terms of methodology and experimental results. Addressing the above points will significantly improve clarity, reproducibility, and readability, making the contribution more accessible to the broader community.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Yes</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Yes</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Yes</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Yes</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Yes</p>
            <p>Reviewer Expertise:</p>
            <p>Image processing, ML/DL applications on image analysis.</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
        <sub-article article-type="response" id="comment15045-419016">
            <front-stub>
                <contrib-group>
                    <contrib contrib-type="author">
                        <name>
                            <surname>Sarangi</surname>
                            <given-names>Partha Pratim</given-names>
                        </name>
                        <aff>School of Computer Engineering, Kalinga Institute of Industrial Technology, Bhubaneswar, Odisha, India</aff>
                    </contrib>
                </contrib-group>
                <author-notes>
                    <fn fn-type="conflict">
                        <p>
                            <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                    </fn>
                </author-notes>
                <pub-date pub-type="epub">
                    <day>9</day>
                    <month>12</month>
                    <year>2025</year>
                </pub-date>
            </front-stub>
            <body>
                <p>
                    <bold>
                        <underline>Comment 1: Clarity &amp; Presentation</underline>
                    </bold>
                </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Improve figure captions, especially for Figures 2&#x2013;7. Captions should be more descriptive (e.g., &#x201c;Classification map of Indian Pines dataset using KNN, Jaya, and EJaya&#x201d; instead of just &#x201c;Classification Map&#x201d;).</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> Thank you for the suggestion. We have revised all figure captions (Figures 2&#x2013;7) to be more informative and descriptive. Each caption now clearly explains the dataset, method used, and what the figure represents.</p>
                <p> 
                    <bold>
                        <underline>Comment 2: Methodology</underline>
                    </bold>
                </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Provide a summary table of all experimental parameters (population size, iterations, mutation factor, K for KNN, etc.) in one place for easy reference.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> We agree with the reviewer. A consolidated experimental parameters table has now been added (Table 4 in the revised manuscript). It summarizes algorithmic settings such as population size, number of iterations, mutation factor (DE), K value for KNN.</p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Add a short note on the computational cost or runtime complexity of EJaya compared with GA/PSO/Jaya. Approximate runtime per dataset would be valuable.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> We have added a paragraph explaining about &#x201c;Computational Cost and Runtime Analysis&#x201d; in the Methodology section.</p>
                <p> 
                    <bold>
                        <underline>Comment 3: References &amp; Language</underline>
                    </bold>
                </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Check minor typos (&#x201c;Opposition-Based Leaning&#x201d; &#x2192; &#x201c;Learning&#x201d;). Ensure consistent use of acronyms (EJaya, OBL, QRI, OA/AA, etc.).</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> We have thoroughly proofread the manuscript and corrected all typographical errors, including the issue mentioned. Acronyms have been standardized throughout the text and verified for consistent usage across sections.</p>
                <p> </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Strengthen the Related Work section with one or two recent (2023&#x2013;2024) references on metaheuristics for hyperspectral band selection.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> We appreciate this helpful suggestion. Already we have added five recent papers from research works (2023&#x2013;2024) on metaheuristic-based band selection to the Related Work section.</p>
            </body>
        </sub-article>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report419019">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.184937.r419019</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Sahu</surname>
                        <given-names>Prabhat Kumar</given-names>
                    </name>
                    <xref ref-type="aff" rid="r419019a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r419019a1">
                    <label>1</label>Siksha O Anusandhan (Deemed to be University), Odisha, Bhubaneswar, India</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>27</day>
                <month>10</month>
                <year>2025</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2025 Sahu PK</copyright-statement>
                <copyright-year>2025</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport419019" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.167794.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>The manuscript presents an Enhanced Jaya (EJaya) algorithm with mutation, opposition-based learning (OBL), and quasi-reflection reinitialization (QRI) for hyperspectral band selection. The study is well-motivated, clearly structured, and demonstrates competitive results across three benchmark hyperspectral datasets (Indian Pines, Pavia University, and Salinas). The proposed improvements address common limitations of standard Jaya and related metaheuristics. The work is promising and deserves indexing after addressing the following minor revisions:</p>
            <p> 
                <bold>1. Introduction &amp; Related Work</bold> 
                <list list-type="bullet">
                    <list-item>
                        <p>Some parts of the Related Work section are very detailed. Consider adding a summary table of algorithms vs. limitations for quick comparison.</p>
                    </list-item>
                </list> 
                <bold>2. Methodology</bold> 
                <list list-type="bullet">
                    <list-item>
                        <p>In the description of the mutation operator (Eq. 3), provide a brief intuition of why adaptive scaling helps balance exploration and exploitation.</p>
                    </list-item>
                    <list-item>
                        <p>Clarify the stopping criterion: Is termination based on maximum iterations and/or stagnation limit (Pmax)? Please state this explicitly.</p>
                    </list-item>
                </list> 
                <bold>3. Language &amp; Formatting</bold> 
                <list list-type="bullet">
                    <list-item>
                        <p>References are generally strong, but please consider citing one or two recent 2023&#x2013;2024 studies on hybrid Jaya or swarm-based HSI band selection to make the Related Work fully up to date.</p>
                    </list-item>
                </list>
            </p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Yes</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Yes</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Yes</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Yes</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Yes</p>
            <p>Reviewer Expertise:</p>
            <p>Machine Learning</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
        <sub-article article-type="response" id="comment15044-419019">
            <front-stub>
                <contrib-group>
                    <contrib contrib-type="author">
                        <name>
                            <surname>Sarangi</surname>
                            <given-names>Partha Pratim</given-names>
                        </name>
                        <aff>School of Computer Engineering, Kalinga Institute of Industrial Technology, Bhubaneswar, Odisha, India</aff>
                    </contrib>
                </contrib-group>
                <author-notes>
                    <fn fn-type="conflict">
                        <p>
                            <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                    </fn>
                </author-notes>
                <pub-date pub-type="epub">
                    <day>9</day>
                    <month>12</month>
                    <year>2025</year>
                </pub-date>
            </front-stub>
            <body>
                <p>
                    <bold>
                        <underline>Comment 1: Introduction &amp; Related Work</underline>
                    </bold>
                </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Some parts of the Related Work section are very detailed. Consider adding a summary table of algorithms vs. limitations for quick comparison.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> Thank you for the suggestion. Instead of adding a summary table, we have revised the end of the Related Work section to include a brief synthesized paragraph that highlights the key limitations of existing algorithms and how our work addresses them. This addition provides a concise comparative overview while keeping the section streamlined without expanding it further with a table.</p>
                <p> 
                    <bold>
                        <underline>Comment 2: Methodology</underline>
                    </bold>
                </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> In the description of the mutation operator (Eq. 3), provide a brief intuition of why adaptive scaling helps balance exploration and exploitation.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> We appreciate the reviewer&#x2019;s recommendation. A short explanatory note has been added immediately after Eq. (3), clarifying that adaptive scaling increases mutation intensity during the early search phase to promote exploration, and gradually stabilizes in later stages to encourage exploitation, thereby improving convergence stability.</p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> Clarify the stopping criterion: Is termination based on maximum iterations and/or stagnation limit (Pmax)? Please state this explicitly.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> This has now been clearly stated in the Methodology section. The algorithm terminates either when the maximum number of iterations is reached or when the stagnation limit (Pmax) is triggered, whichever occurs first.</p>
                <p> 
                    <bold>
                        <underline>Comment 3: Language &amp; Formatting</underline>
                    </bold>
                </p>
                <p> 
                    <bold>Reviewer&#x2019;s comment:</bold>
                </p>
                <p> References are generally strong, but please consider citing one or two recent 2023&#x2013;2024 studies on hybrid Jaya or swarm-based HSI band selection to make the Related Work fully up to date.</p>
                <p> 
                    <bold>Response:</bold>
                </p>
                <p> We appreciate this helpful suggestion. Already we have added five recent papers from research works (2023&#x2013;2024) on swarm-based band selection to the Related Work section.</p>
            </body>
        </sub-article>
    </sub-article>
</article>
