<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">32215</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2023.032215</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Optimization Task Scheduling Using Cooperation Search Algorithm for Heterogeneous Cloud Computing Systems</article-title>
<alt-title alt-title-type="left-running-head">Optimization Task Scheduling Using Cooperation Search Algorithm for Heterogeneous Cloud Computing Systems</alt-title>
<alt-title alt-title-type="right-running-head">Optimization Task Scheduling Using Cooperation Search Algorithm for Heterogeneous Cloud Computing Systems</alt-title>
</title-group>
<contrib-group content-type="authors">
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Hamed</surname><given-names>Ahmed Y.</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Elnahary</surname><given-names>M. Kh.</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><email>mk409055@gmail.com</email></contrib>
<contrib id="author-3" contrib-type="author">
<name name-style="western"><surname>Alsubaei</surname><given-names>Faisal S.</given-names></name><xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-4" contrib-type="author">
<name name-style="western"><surname>El-Sayed</surname><given-names>Hamdy H.</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<aff id="aff-1"><label>1</label><institution>Department of Computer Science, Faculty of Computers and Artificial Intelligence, Sohag University</institution>, <addr-line>Sohag, 82524</addr-line>, <country>Egypt</country></aff>
<aff id="aff-2"><label>2</label><institution>Department of Cybersecurity, College of Computer Science and Engineering, University of Jeddah</institution>, <addr-line>Jeddah, 21959</addr-line>, <country>Saudi Arabia</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: M. Kh. Elnahary. Email: <email>mk409055@gmail.com</email></corresp>
</author-notes>
<pub-date pub-type="epub" date-type="pub" iso-8601-date="2022-08-16"><day>16</day>
<month>08</month>
<year>2022</year></pub-date>
<volume>74</volume>
<issue>1</issue>
<fpage>2133</fpage>
<lpage>2148</lpage>
<history>
<date date-type="received"><day>10</day><month>5</month><year>2022</year></date>
<date date-type="accepted"><day>05</day><month>7</month><year>2022</year></date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2023 Hamed et al.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Hamed et al.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, 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="TSP_CMC_32215.pdf"></self-uri>
<abstract>
<p>Cloud computing has taken over the high-performance distributed computing area, and it currently provides on-demand services and resource polling over the web. As a result of constantly changing user service demand, the task scheduling problem has emerged as a critical analytical topic in cloud computing. The primary goal of scheduling tasks is to distribute tasks to available processors to construct the shortest possible schedule without breaching precedence restrictions. Assignments and schedules of tasks substantially influence system operation in a heterogeneous multiprocessor system. The diverse processes inside the heuristic-based task scheduling method will result in varying makespan in the heterogeneous computing system. As a result, an intelligent scheduling algorithm should efficiently determine the priority of every subtask based on the resources necessary to lower the makespan. This research introduced a novel efficient scheduling task method in cloud computing systems based on the cooperation search algorithm to tackle an essential task and schedule a heterogeneous cloud computing problem. The basic idea of this method is to use the advantages of meta-heuristic algorithms to get the optimal solution. We assess our algorithm&#x2019;s performance by running it through three scenarios with varying numbers of tasks. The findings demonstrate that the suggested technique beats existing methods New Genetic Algorithm (NGA), Genetic Algorithm (GA), Whale Optimization Algorithm (WOA), Gravitational Search Algorithm (GSA), and Hybrid Heuristic and Genetic (HHG) by 7.9&#x0025;, 2.1&#x0025;, 8.8&#x0025;, 7.7&#x0025;, 3.4&#x0025; respectively according to makespan.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Heterogeneous processors</kwd>
<kwd>cooperation search algorithm</kwd>
<kwd>task scheduling</kwd>
<kwd>cloud computing</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1"><label>1</label><title>Introduction</title>
<p>The cloud computing model emerged with the growth of the Internet and the services that the Internet provides to its users. The cloud model is based on distributed computing and consists of different virtual computers that can be interconnected and dynamic to form computing resources. The vacant resources should be used globally to increase the utilization and gain of the resources by increasing the economic efficiency of these resources. The cloud model best serves this. The primary goal of the cloud computing concept is to enable users to share data and resources. It is a platform to provide applications and services to its users. There are three forms of cloud computing: platform as a service (paas), software as a service (saas), and infrastructure as a service (iaas) [<xref ref-type="bibr" rid="ref-1">1</xref>]. These services are available to users on a pay-on-demand basis and share servers, computing resources, applications, networks, and data storage. The licenced software is delivered to the user on a subscription basis for the services in a saas service. These services may be accessed from any device using a web browser. In paas, users can create their services using the available cloud services and then publish those services on their devices. In iaas, the organizational infrastructure for clients is available online. To use this, the consumer does not need to comprehend the internal nature of the infrastructure [<xref ref-type="bibr" rid="ref-1">1</xref>]. Instead of buying the entire infrastructure for business requirements, which the customer takes as basic rent when there are no more infrastructure requirements, the customer uses the amount paid for the services. In the last year, the number of cloud users has increased, so the volume of tasks you need to manage by default for this task is required for scheduling [<xref ref-type="bibr" rid="ref-1">1</xref>]. To solve the problem of scheduling tasks better, we have proposed a novel efficient approach based on the cooperation search algorithm called the Efficient Cooperation Search Algorithm (ECSA) to minimize the makespan of the user requests on the resources. In the cooperation search algorithm, the representation of a vector is a continuous value, so we use two methods to convert the continuous value to a discrete value. We assess our algorithm&#x2019;s performance by running it through three cases with varying numbers of tasks.</p>
<p>The following is the paper&#x2019;s structure: Section 2 contains the notations. Related work for problems of scheduling tasks is given in Section 3. The problem description is given in Section 4. Section 5 shows the cooperation search algorithm. Section 6 describes the ECSA approach. The results were obtained by applying the ECSA and compared with the other results and discussion presented in Section 7. Section 8 concludes and offers future work.</p>
</sec>
<sec id="s2"><label>2</label><title>Notations</title>
<p>TG represents the graph of tasks</p>
<p>Tas<sub>i</sub> represents the task i</p>
<p>Pros<sub>i</sub> represents the processor i</p>
<p>NMP represents the processor&#x2019;s number</p>
<p>NMT represents the task&#x2019;s number</p>
<p>C(Tas<sub>i</sub>, Tas<sub>j</sub>) The communication cost between Tas<sub>i</sub> and Tas<sub>j</sub></p>
<p>Start_Time(Tas<sub>i</sub>, Pros<sub>j</sub>) represents the task&#x2019;s start time i on a processor Pros<sub>j</sub></p>
<p>Finish_Time(Tas<sub>i</sub>, Pros<sub>j</sub>) represents the task&#x2019;s finish time i on a processor Pros<sub>j</sub></p>
<p>Ready_Time(Pros<sub>i</sub>) represents the processor&#x2019;s ready time i</p>
<p>LT represents a list of jobs arranged in directed acyclic graph topological order</p>
<p>Data_Arrive(Tas<sub>i</sub>, Pros<sub>j</sub>) represents the time of data arrival of task i to processor j</p>
</sec>
<sec id="s3"><label>3</label><title>Related Work</title>
<p>In terms of cloud computing, scheduling tasks directly influences resource utilization and operational expenses. Many metaheuristic approaches and variants for optimizing scheduling have been created to boost the efficiency of task executions in the cloud. This study [<xref ref-type="bibr" rid="ref-2">2</xref>] introduces the Whale Optimization Algorithm (WOA) for scheduling tasks in the cloud using a multiobjective improvement model, intending to increase the cloud system performance with limited resources for computing. Based on that assumption, an improved method called Improved Whale Optimization Algorithm (IWC) for scheduling tasks in the cloud was created to boost the whale optimization algorithm-based method&#x2019;s best solution search capability. The algorithm aims to Improve convergence speed and accuracy and increase the resource utilization cost.</p>
<p>Cloud computing is a relatively new paradigm for exploiting distant resources for computing; It is also becoming a more robust and popular technology that enables on-demand resource allocation and release in near real-time. Scheduling tasks are crucial in cloud computing and are one of the most challenging things to master in this field. As a result, a strong and effective scheduling system is necessary to better resource utilization. An excellent algorithm for scheduling tasks can improve the quality of service, overall performance, and end-user experience. As the number of available tasks grows, so does the complexity of the problem, resulting in a huge search space. To offer a technique capable of finding a near-optimal solution for a multiobjective scheduling task issue in a cloud computing environment while also reducing search time. The authors provide the hybridized bat algorithm, a swarm-intelligence-based technique for multiobjective task scheduling [<xref ref-type="bibr" rid="ref-3">3</xref>]. The algorithm aims to utilize makespan, cost, and Hyervolume indicator.</p>
<p>The most critical need in a cloud computing environment is scheduling tasks since it is vital to the overall functioning of cloud computing facilities. In cloud computing, scheduling tasks implies allocating the possible resources for the work to be executed while considering dependability, time, scalability, cost, makespan, throughput, resource consumption, availability, etc. The suggested approach takes reliability and availability into account. Because of the difficulties of achieving these criteria, most scheduling methods do not incorporate cloud computing ecosystem stability and availability. A mathematical model for cloud computing that uses mutation of load balancing and a particle swarm optimization based allocation and schedule that considers the time of transmission, time of the round trip, reliability, time of execution, load balancing, makespan, cost of transmission, and between virtual machines and tasks is presented [<xref ref-type="bibr" rid="ref-4">4</xref>]. It can contribute to the dependability of the cloud computing environment by considering the availability of resources and rescheduling tasks that fail to allocate them.</p>
<p>Several advantages are provided by central cloud facilities based on virtual computers, including reduced costs of scheduling and improved service accessibility and availability. The cloud computing strategy is viable because of the combination of security measures and online services. The feature spaces of the source and destination domains differ in task transfer. This problem is exacerbated by network traffic, which causes data transmission delays and prevents some vital operations from being completed on time. This work introduces a hybrid multi-verse optimizer with a genetic algorithm as a practical optimization approach for job scheduling. The suggested algorithm is intended to improve the performance of the tasks transported over the cloud network based on the workload of resources in the cloud. It is required to give suitable decisions of transfer to reschedule the transfer tasks in the cloud based on the efficiency weight of the acquired jobs. The suggested technique considers a variety of cloud resource attributes, including throughput, capacity, number of virtual machines, number and size of tasks, and speed [<xref ref-type="bibr" rid="ref-5">5</xref>]. The algorithm aims to optimize the transfer time of large cloud tasks, which reflects its effectiveness.</p>
<p>Cloud computing is a type of on-demand Internet-based computing widely used by both working and non-working individuals throughout the world. One of the essential applications utilized by cloud service providers and end-users is task scheduling. The task scheduler&#x2019;s main challenge is to locate the best resource for the given input job. A hybrid electro search combined with a genetic algorithm is proposed [<xref ref-type="bibr" rid="ref-6">6</xref>] to optimize scheduling task behaviour by considering load balancing, makespan, multi-cloud cost, and resource usage criteria. The proposed solution leveraged the benefits of both an electrical search algorithm and a genetic algorithm. The genetic algorithm gives the best solutions within the local optimum, whereas the electro-search method delivers the best solutions within the global optimal. The algorithm aims to decrease makespan, cost, and response time.</p>
<p>The scheduling task is essential to improving the performance of collaborative and distributed e-science and e-business applications at scale. This typical application includes multiple communication tasks that are performed on virtual machines. The primary objective of any scheduling method is to reduce the extent of the configuration, which reflects the exit task completion time. Focusing on downsizing for allocating or scheduling multiple tasks across heterogeneous virtual machines, in this paper [<xref ref-type="bibr" rid="ref-7">7</xref>] a model based on the Crow Search Algorithm (CSA) was proposed and the main objective of this model is to reduce the makespan.</p>
<p>Scheduling tasks is the primary issue in cloud computing, which reduces the system&#x2019;s performance. It&#x2019;s an effective method to organize the user&#x2019;s requirements and achieve multiple goals. An efficient scheduling task algorithm is required to improve the system&#x2019;s performance. A Genetic Algorithm (GA) has been described for task assignment and execution. The algorithm aims to decrease the execution cost and makespan of tasks and increase resource utilization [<xref ref-type="bibr" rid="ref-8">8</xref>].</p>
</sec>
<sec id="s4"><label>4</label><title>Problem Description</title>
<p>During this work, the task scheduling model is defined as distributed Number of Tasks (NMT) tasks to be implemented on Number of Processors (NMP) processors. The processors may be different in general. Task Graph (TG) may be mapped to describe the problem structure. TG is a Directed Acyclic Graph (DAG) made up of NMT tasks: Tas<sub>1</sub>, Tas<sub>2</sub>, Tas<sub>3</sub>,&#x2026; Tas<sub>n</sub>. Every node in the graph is termed a task. A task is assumed to be a set of instructions that must be implemented sequentially by an assigned processor. A task (node) might have pre-demanded data (inputs) before implementation. When all the inputs are received, the task can be triggered to be implemented. These inputs are expected to be delivered after some other tasks end their implementation, as these tasks evaluate them. We call this relying on task dependency. If a task is dependent on other tasks&#x2019; data, then we consider that task as the parent of the task, and the task is their child. A task with no parents is called an entry task, and a task with no children is called an exit task [<xref ref-type="bibr" rid="ref-9">9</xref>]. The execution time of a task is what we call the computation cost. Whenever the computation cost of a task Tas<sub>i</sub> is denoted by weight (Tas<sub>i</sub>, Pros<sub>j</sub>), the graph additionally has directed edges representing a partial order among the tasks. The partial order introduces a precedence-constrained DAG and implies that if (Tas<sub>i</sub> <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula> Tas<sub>j</sub>), then Tas<sub>j</sub> is a child, which means it cannot start until its parent Tas<sub>i</sub> finishes. The weight on edge represents the communication cost between the tasks and is denoted by C(Tas<sub>i</sub>, Tas<sub>j</sub>); the communication cost is considered only if Tas<sub>i</sub> and Tas<sub>j</sub> are assigned to different processors; otherwise, it&#x2019;s calculated to be zero. In that case, Tas<sub>i</sub> and Tas<sub>j</sub> are assigned to the same processor. If a node Tas<sub>i</sub> is assigned to processor Pros<sub>j</sub>, the task&#x2019;s start time and finish time are denoted by Start_Time(Tas<sub>i</sub>, Pros<sub>j</sub>) and Finish_Time(Tas<sub>i</sub>, Pros<sub>j</sub>), respectively. After scheduling the tasks, the makespan is defined as the max &#x007B;Finish_Time(Tas<sub>i</sub>, Pros<sub>j</sub>)&#x007D; across all processors. The task scheduling problem is to find a schedule for the tasks in the processors such that the makespan is decreased over possible schedules, where the task dependency constraints are preserved. Task dependency constraints state that any task can&#x2019;t start until all parents have finished. Assume that Pros<sub>j</sub> is the processor and that the Kpa<sup>th</sup> parent task Tas<sub>k</sub> of task Tas<sub>i</sub>, is scheduled. The Data_Arrive of Tas<sub>i</sub> at processor Pros<sub>j</sub> is the time at which the per-demanded data for the task execution becomes available. This is defined in [<xref ref-type="bibr" rid="ref-9">9</xref>] by the following:
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1"><mml:mn>1</mml:mn></mml:math></disp-formula>
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:mrow><mml:mtext>Start</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mtext>max</mml:mtext></mml:mrow><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mtext>Ready</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mtext>Data</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Arrive</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:mrow><mml:mtext>Finish</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mtext>Start</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>weight</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mrow><mml:mtext>Ready</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mtext>Finish</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mrow><mml:mtext>Makespan</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mtext>max</mml:mtext></mml:mrow><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mtext>Finish</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext>Time</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>Pros</mml:mtext></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>}</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>where</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>&#x2026;</mml:mo><mml:mrow><mml:mtext>NMT</mml:mtext></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="s5"><label>5</label><title>Cooperation Search Algorithm</title>
<p>The specifics of the Cooperation Search Algorithm (CSA) approach [<xref ref-type="bibr" rid="ref-10">10</xref>] are provided in this part to provide a unique additional tool for global optimization problems: The cooperative team behaviours in current organizations are explained first, followed by the search concept of the CSA approach. The following are some examples of frequent restricted minimization optimization problems:
<disp-formula id="ueqn-1">
<mml:math id="mml-ueqn-1" display="block"><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mi mathvariant="normal">y</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="normal">y</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>.</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="normal">y</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="normal">j</mml:mi></mml:mrow></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:mrow><mml:mi mathvariant="normal">y</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="normal">J</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>&#x2208;</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:msup><mml:mrow><mml:mtext>R</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>J</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></disp-formula>
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mrow><mml:mtext>Such&#x00A0; that</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:msub><mml:mrow><mml:mtext>gg</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x2264;</mml:mo><mml:mn>0</mml:mn><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>.</mml:mo><mml:mo>.</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mtext>EE</mml:mtext></mml:mrow></mml:math></disp-formula>
<disp-formula id="ueqn-2">
<mml:math id="mml-ueqn-2" display="block"><mml:msub><mml:mrow><mml:mtext>hh</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>.</mml:mo><mml:mo>.</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; G</mml:mtext></mml:mrow></mml:math></disp-formula>
<disp-formula id="ueqn-3">
<mml:math id="mml-ueqn-3" display="block"><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j&#x00A0;&#xA0;</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mrow><mml:mtext>&#x00A0; y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x2264;</mml:mo><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mi mathvariant="normal">j</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>.</mml:mo><mml:mo>.</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">J</mml:mi></mml:mrow></mml:math></disp-formula>where g(x) denotes the J-dimensional solution&#x2019;s objective value. y<sub>j</sub> denotes the j<sup>th</sup> variable in solution y, <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover></mml:math></inline-formula> and <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j&#x00A0;&#xA0;</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder></mml:math></inline-formula> are the upper and lower bounds of the j<sup>th</sup> variable, respectively. The number of possible decision factors is denoted by the letter J. The inequality constraint is <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:msub><mml:mrow><mml:mtext>gg</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. The g<sup>th</sup> equality constraint is expressed as <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msub><mml:mrow><mml:mtext>hh</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. The variables G and EE represent the number of equality and inequality constraints, respectively.</p>
<sec id="s5_1"><label>5.1</label><title>Insights from Teamwork Behaviour in Modern Businesses</title>
<p>In recent years, all types of businesses have played an increasingly essential part in economic and social growth. Cooperative team conduct is critical to one company&#x2019;s normal functioning. The boards of supervisors and directors, the chairman, and the staff are four different positions frequently used in the corporate cooperation process. The board of directors, which comprises shareholders who have been chosen to represent them, oversees the company&#x2019;s business operations and administers the productive duties inside. In other words, the board of directors oversees all of the company&#x2019;s affairs and transactions. The board of supervisors is tasked with supervising the executive directors and promoting the interests of the shareholders [<xref ref-type="bibr" rid="ref-10">10</xref>]. In contrast, the boards of supervisors and directors can&#x2019;t participate in the firm&#x2019;s corporate decision-making process and can&#x2019;t represent the organization externally. As an executive elected by the board of directors, the chairman is primarily responsible for the company&#x2019;s scientific activities. Furthermore, as the firm&#x2019;s spokesman, the chairman frequently has significant, if not decisive, influence over the company to ensure smooth and orderly operations before reaching a consensus on board decisions. The staff is required to participate in specific tasks under the direction of the board of directors, which typically has the authority to select members of the boards of supervisors and directors. It is generally recognized that human people are one of the essential components in increasing productivity, implying that growing staff strength is a critical aspect of the company&#x2019;s scientific development. In order to achieve this aim, it is vital to assist individual staff members in gaining as much information as possible. In general, a group of leaders on the boards of supervisors and directors and a chairperson can all impact staff knowledge at the same time. Because of their role as team leaders, the chairman on duty frequently has the most power. At the same time, members of the boards of supervisors and directors supply ample information to minimize or even eliminate potential mistakes. After some time, each staff member is urged to contemplate self-improvement methods and given the option to assume the position of their superior leaders once their performance has improved. In other words, the chairman and the members of the board of directors and supervisors can be dynamically updated to boost the company&#x2019;s market competitiveness. It has been discovered that there are close connections among members of various social statuses; underperforming leaders or staff might be replaced by promising young people, while ordinary staff has the opportunity to improve their knowledge and advance their job positions through hard work. As a result, the firm can continue to operate to achieve sustainable development [<xref ref-type="bibr" rid="ref-10">10</xref>].</p>
</sec>
<sec id="s5_2"><label>5.2</label><title>The CSA Method&#x2019;s Search Principle</title>
<p>In CSA, the optimization process of the target problem is viewed as the development of an enterprise; each solution is viewed as a staff member, while a group of staff members forms an enterprise team; the value of the fitness of the problem is equal to the performance per staff member; the board of supervisors is made up of personal best-known solutions; the board of directors is made up of the external archive set (M global best-known solutions found by far); the chairman on duty is rando. The population may then gradually develop high-quality solutions by replicating team cooperation behaviours in the modern industry by employing three evolutionary operators: The team communication operator is used to assist employees in capturing useful leaders&#x2019; knowledge; The operator for reflective learning is used to increase the staff&#x2019;s overall strength by drawing lessons from the past. The internal competition operator improves the top solutions&#x2019; work experiences and leadership vision. Following that, the technical elements of the CSA technique are as follows [<xref ref-type="bibr" rid="ref-10">10</xref>]:</p>
<p><bold>The team-building phase:</bold> The equation determines all team members at random <xref ref-type="disp-formula" rid="eqn-7">Eq. (7)</xref>. After evaluating all solutions&#x2019; performances, <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:mrow><mml:mi mathvariant="normal">M</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x03F5;</mml:mi></mml:mrow><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">I</mml:mi></mml:mrow><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> solutions for leaders will be picked from the original swarm to create the external elite set.
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mrow><mml:mtext>where</mml:mtext></mml:mrow><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mrow><mml:mtext>i&#x00A0;&#xA0;</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>I</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; j&#x00A0;&#xA0;</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>J</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; k</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></disp-formula>where I is the current swarm&#x2019;s number of solutions. The j<sup>th</sup> value of the i<sup>th</sup> solution during the k<sup>th</sup> cycle is represented by <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>. O (Lower Bound (LOB), Upper Bound (UPB)) is a function that generates a random number with a uniform distribution in the range [LOB, UPB] [<xref ref-type="bibr" rid="ref-10">10</xref>].</p>
<p><bold>The operator of team communication:</bold> Each staff member may learn new messages by sharing information with the chairman and the board of supervisors and directors. As shown in <xref ref-type="disp-formula" rid="eqn-8">Eq. (8)</xref>, the team communication process consists of the chairman&#x2019;s knowledge W, E the board of directors&#x2019; collective knowledge, and the collective knowledge Z from the board of supervisors. The chairman is picked randomly from the board of directors to replicate the rotating mechanism. In contrast, all supervisors and directors&#x2019; board members are assigned identical positions in calculating E and Z [<xref ref-type="bibr" rid="ref-10">10</xref>].
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; W</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; E</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>Z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mspace width="thickmathspace" /><mml:mo>,</mml:mo><mml:mrow><mml:mtext>where i</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>I</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; j</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>J</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; k</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>K</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>W</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>)</mml:mo></mml:mrow><mml:mo>.</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>globest</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>inde</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>E</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x03B1;</mml:mi></mml:mrow><mml:mspace width="thickmathspace" /><mml:mo>.</mml:mo><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>.</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mtext>M</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle><mml:msubsup><mml:mrow><mml:mo>&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:mrow><mml:mtext>m</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mtext>M</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>globest</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>m</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>Z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x03B2;</mml:mi></mml:mrow><mml:mo>.</mml:mo><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>.</mml:mo><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>[</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mtext>I</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle><mml:msubsup><mml:mrow><mml:mo>&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mtext>I</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>perbest</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p><inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes the j<sup>th</sup> value of the i<sup>th</sup> group solution during the (k &#x002B; 1)<sup>th</sup> cycle. The j<sup>th</sup> value of the i<sup>th</sup> personal best-known solution during the k<sup>th</sup> cycle is given by <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>perbest</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>. The j<sup>th</sup> value of the inde<sup>th</sup> global best-known solution from the beginning of the k<sup>th</sup> cycle is represented by <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>globest</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>inde</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>. The index inde is chosen at random from the set of &#x007B;1, 2,&#x2026;, M&#x007D;. <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>W</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> represents the information obtained from the chairman, who was randomly picked from the external elite group. <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>E</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> and <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>Z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> represent the average knowledge acquired from M global best-known solutions discovered by far and I personal best-known solutions, respectively. <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mrow><mml:mi mathvariant="normal">&#x03B1;</mml:mi></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:mrow><mml:mi mathvariant="normal">&#x03B2;</mml:mi></mml:mrow></mml:math></inline-formula> are the learning coefficients used to alter the influence degrees of <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>E</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> and <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>Z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>, respectively [<xref ref-type="bibr" rid="ref-10">10</xref>].</p>
<p><bold>The operator of reflective learning:</bold> Aside from learning from the leader&#x2019;s solutions, the staff may also receive new information by summarising their own experience in the other way, as seen below [<xref ref-type="bibr" rid="ref-10">10</xref>]:
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>l</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>h</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>if</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mrow><mml:mtext>&#x00A0; z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>if</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>&#x003C;</mml:mo><mml:msub><mml:mrow><mml:mtext>&#x00A0; z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>where&#x00A0; i</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; I</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; j&#x00A0;&#xA0;</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; J</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; k&#x00A0;&#xA0;</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>K</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>h</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>&#x00A0; z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>if</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo><mml:msub><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo></mml:mrow><mml:mo>&#x003C;</mml:mo><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>.</mml:mo><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>|</mml:mo><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>|</mml:mo></mml:mrow><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>,</mml:mo><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-14"><label>(14)</label><mml:math id="mml-eqn-14" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>if</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo><mml:msub><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo></mml:mrow><mml:mo>&#x003C;</mml:mo><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>.</mml:mo><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>|</mml:mo><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>|</mml:mo></mml:mrow><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mtext>O</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>&#x00A0; q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-15"><label>(15)</label><mml:math id="mml-eqn-15" display="block"><mml:msub><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mn>2</mml:mn></mml:mfrac></mml:mstyle><mml:mo>.</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mspace width="thickmathspace" /><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p><inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>l</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes the j<sup>th</sup> value of the i<sup>th</sup> reflective solution during the (k &#x002B; 1)<sup>th</sup> cycle.</p>
<p><bold>The operator of internal competition:</bold> The team steadily improves its competitiveness in the market by ensuring that all employees with superior performance are always retained, as shown below [<xref ref-type="bibr" rid="ref-10">10</xref>]:
<disp-formula id="eqn-16"><label>(16)</label><mml:math id="mml-eqn-16" display="block"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>if</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>G</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x2264;</mml:mo><mml:mrow><mml:mtext>G</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>l</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>l</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mspace width="thickmathspace" /><mml:mspace width="thickmathspace" /><mml:mrow><mml:mtext>if</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>G</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>q</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x003E;</mml:mo><mml:mrow><mml:mtext>G</mml:mtext></mml:mrow><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>l</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>where i</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; I</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; j&#x00A0;&#xA0;</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; J</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#x00A0; k&#x00A0;&#xA0;</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>K</mml:mtext></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>G(y) denotes the value of fitness of the solution y. In order to implement multiple physical constraints, <xref ref-type="disp-formula" rid="eqn-17">Eq. (17)</xref> is used to modify all the variables in y to the feasible zone. Then the penalty functions approach in <xref ref-type="disp-formula" rid="eqn-18">Eq. (18)</xref> is used to achieve the fitness value G (y) by combining the value of constraint violation with the objective value g (y). Then, all constraints are well fulfilled for feasible solutions, resulting in the original objective value being equal to a fitness value; for infeasible alternatives, the constraint violation value becomes positive, resulting in a fitness value more significant than the objective value. As a result, the swarm may be directed to a practical search region [<xref ref-type="bibr" rid="ref-10">10</xref>].
<disp-formula id="eqn-17"><label>(17)</label><mml:math id="mml-eqn-17" display="block"><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mover><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mtext>&#x00A0; y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>}</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mspace width="thickmathspace" /><mml:munder><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x005F;</mml:mo></mml:munder><mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula id="eqn-18"><label>(18)</label><mml:math id="mml-eqn-18" display="block"><mml:mrow><mml:mtext>G</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:msubsup><mml:mrow><mml:mo>&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mtext>EE</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>.</mml:mo><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:msub><mml:mrow><mml:mtext>gg</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>}</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:msubsup><mml:mrow><mml:mo>&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mtext>G</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>.</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mtext>hh</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="normal">y</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>|</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> is the j<sup>th</sup> value to be evaluated from the solution y. The ee<sup>th</sup> inequality constraint penalty coefficient is denoted by <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ee</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula>. For the g<sup>th</sup> inequality constraint, the penalty coefficient is <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:msubsup><mml:mrow><mml:mrow><mml:mtext>z</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>g</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula>.
</p>
<fig id="fig-11">
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-11.png"/>
</fig>
</sec>
</sec>
<sec id="s6"><label>6</label><title>The Proposed Algorithm</title>
<p>We can see that the representation of a vector is a continuous value; therefore, we will apply the Smallest Position Value (SPV) rule [<xref ref-type="bibr" rid="ref-11">11</xref>] and the Largest Position Value (LPV) rule [<xref ref-type="bibr" rid="ref-12">12</xref>], as well as the modulus function with the number of processors and increasing the value by 1, as shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>.</p>
<fig id="fig-1"><label>Figure 1</label><caption><title>An example of the proposed schedule</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-1.png"/></fig>
<p>Where the tasks Tas<sub>1</sub> and Tas<sub>3</sub> are scheduled into processor 1. The tasks Tas<sub>2</sub>, Tas<sub>6</sub>, and Tas<sub>7</sub> are scheduled into processor 2. The tasks Tas<sub>4</sub> and Tas<sub>5</sub> are scheduled into processor 3, as shown in <xref ref-type="fig" rid="fig-2">Fig. 2</xref>.
<fig id="fig-2"><label>Figure 2</label><caption><title>The proposed schedule</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-2.png"/></fig>
<fig id="fig-12">
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-12.png"/>
</fig>
<fig id="fig-13">
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-13.png"/>
</fig>
<fig id="fig-14">
<graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-14.png"/>
</fig></p>
<p>We can see as shown above that Algorithm 1 is used to compute the makespan by taking the schedule after converting it by Algorithm 2, which detects the method that is used to convert the continuous value to a discrete value by generating a random number, the number maybe 1 or 2. The proposed algorithm uses the operation of a cooperation search algorithm to find the best solution for the makespan. We can see that the value of speedup, efficiency, and throughput depends on the makespan. The smaller the makespan, the higher the speedup, efficiency, and throughput.</p>
</sec>
<sec id="s7"><label>7</label><title>Evaluation of the ECSA</title>
<p>In this part, we demonstrate the ECSA&#x2019;s efficacy by applying it to three cases. The first case is of three heterogeneous processors and eleven tasks. The second case consists of three heterogeneous processors and ten tasks. The third one consists of a different number of tasks and processors. ECSA was implemented as a system by MATLAB 2016. We set the initial values of the parameters initial population&#x2009;&#x003D;&#x2009;100, <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.10</mml:mn></mml:math></inline-formula>,<inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mspace width="thickmathspace" /><mml:mi>&#x03B2;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.15</mml:mn></mml:math></inline-formula>, max of iteration&#x2009;&#x003D;&#x2009;100.</p>
<p>Speedup is the ratio between the results obtained by assigning all tasks to a processor that gives the minimum makespan and the results obtained by executing tasks in parallel. It is calculated as shown in <xref ref-type="disp-formula" rid="eqn-19">Eq. (19)</xref> [<xref ref-type="bibr" rid="ref-7">7</xref>].
<disp-formula id="eqn-19"><label>(19)</label><mml:math id="mml-eqn-19" display="block"><mml:mrow><mml:mtext>Speedup</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:munder><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow><mml:msub><mml:mrow><mml:mtext>pros</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:munder><mml:mspace width="thickmathspace" /><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mrow><mml:mo>&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mrow><mml:mtext>Tas</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:msub><mml:mrow><mml:mtext>weight</mml:mtext></mml:mrow><mml:mrow><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>j&#x00A0;&#xA0;</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mrow><mml:mtext>makespan</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle><mml:mspace width="thickmathspace" /><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Efficiency is the ratio between the obtained speedup results and the total number of processors used. It is calculated as shown in <xref ref-type="disp-formula" rid="eqn-20">Eq. (20)</xref> [<xref ref-type="bibr" rid="ref-7">7</xref>].
<disp-formula id="eqn-20"><label>(20)</label><mml:math id="mml-eqn-20" display="block"><mml:mrow><mml:mtext>Efficiency</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mtext>Speedup</mml:mtext></mml:mrow><mml:mrow><mml:mtext>NMP</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula></p>
<p>Throughput: The value of the throughput metric can be defined as the number of tasks executed per unit of time. It is calculated as shown in <xref ref-type="disp-formula" rid="eqn-21">Eq. (21)</xref> [<xref ref-type="bibr" rid="ref-13">13</xref>].
<disp-formula id="eqn-21"><label>(21)</label><mml:math id="mml-eqn-21" display="block"><mml:mrow><mml:mtext>Throughput</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mtext>NMT</mml:mtext></mml:mrow><mml:mrow><mml:mtext>makespan</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula></p>
<sec id="s7_1"><label>7.1</label><title>Case 1</title>
<p>In this case, the tasks &#x007B;Tas<sub>0</sub>, Tas<sub>1</sub>, Tas<sub>2</sub>, Tas<sub>3</sub>, Tas<sub>4</sub>, Tas<sub>5</sub>, Tas<sub>6</sub>, Tas<sub>7</sub>, Tas<sub>8</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D; will be executed on three heterogeneous processors &#x007B;Pros<sub>1</sub>, Pros<sub>2</sub>, Pros<sub>3</sub>&#x007D;. The cost of executing each task on different processors is shown in <xref ref-type="table" rid="table-1">Tab. 1</xref> [<xref ref-type="bibr" rid="ref-14">14</xref>]. The schedule obtained by ECSA and other algorithms is shown in <xref ref-type="table" rid="table-2">Tab. 2</xref>. The results obtained by the proposed ECSA are compared with those obtained by the Genetic Algorithm (GA) [<xref ref-type="bibr" rid="ref-8">8</xref>], and New Genetic Algorithm (NGA) [<xref ref-type="bibr" rid="ref-14">14</xref>]. The task priority of ECSA &#x007B;Tas<sub>0</sub>, Tas<sub>2</sub>, Tas<sub>3</sub>, Tas<sub>4</sub>, Tas<sub>1</sub>, Tas<sub>6</sub>, Tas<sub>8</sub>, Tas<sub>7</sub>, Tas<sub>5</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D;, task priority of NGA &#x007B;Tas<sub>0</sub>, Tas<sub>4</sub>, Tas<sub>3</sub>, Tas<sub>2</sub>, Tas<sub>8</sub>, Tas<sub>1</sub>, Tas<sub>6</sub>, Tas<sub>5</sub>, Tas<sub>7</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D;, GA &#x007B;Tas<sub>0</sub>, Tas<sub>2</sub>, Tas<sub>6</sub>, Tas<sub>4</sub>, Tas<sub>1</sub>, Tas<sub>3</sub>, Tas<sub>8</sub>, Tas<sub>7</sub>, Tas<sub>5</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D;. <xref ref-type="fig" rid="fig-3 fig-4 fig-5 fig-6">Figs. 3</xref>&#x2013;<xref ref-type="fig" rid="fig-6">6</xref> represent the results obtained by the ECSA, NGA, and GA in terms of makespan, speedup, efficiency, and throughput.</p>
<table-wrap id="table-1"><label>Table 1</label><caption><title>Computation cost for case 1</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Tas/Pros</th>
<th align="left">Pros<sub>1</sub></th>
<th align="left">Pros<sub>2</sub></th>
<th align="left">Pros<sub>3</sub></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Tas<sub>0</sub></td>
<td align="left">10</td>
<td align="left">11</td>
<td align="left">12</td>
</tr>
<tr>
<td align="left">Tas<sub>1</sub></td>
<td align="left">11</td>
<td align="left">12</td>
<td align="left">13</td>
</tr>
<tr>
<td align="left">Tas<sub>2</sub></td>
<td align="left">12</td>
<td align="left">8</td>
<td align="left">13</td>
</tr>
<tr>
<td align="left">Tas<sub>3</sub></td>
<td align="left">14</td>
<td align="left">10</td>
<td align="left">18</td>
</tr>
<tr>
<td align="left">Tas<sub>4</sub></td>
<td align="left">27</td>
<td align="left">20</td>
<td align="left">19</td>
</tr>
<tr>
<td align="left">Tas<sub>5</sub></td>
<td align="left">15</td>
<td align="left">12</td>
<td align="left">18</td>
</tr>
<tr>
<td align="left">Tas<sub>6</sub></td>
<td align="left">9</td>
<td align="left">14</td>
<td align="left">19</td>
</tr>
<tr>
<td align="left">Tas<sub>7</sub></td>
<td align="left">19</td>
<td align="left">12</td>
<td align="left">14</td>
</tr>
<tr>
<td align="left">Tas<sub>8</sub></td>
<td align="left">14</td>
<td align="left">10</td>
<td align="left">15</td>
</tr>
<tr>
<td align="left">Tas<sub>9</sub></td>
<td align="left">15</td>
<td align="left">12</td>
<td align="left">15</td>
</tr>
<tr>
<td align="left">Tas<sub>10</sub></td>
<td align="left">18</td>
<td align="left">10</td>
<td align="left">17</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-2"><label>Table 2</label><caption><title>Schedule obtained by ECSA and other algorithms for case 1</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left"/>
<th align="center" colspan="3">NGA</th>
<th align="center" colspan="3">GA</th>
<th align="center" colspan="3">ECSA</th>
</tr>
<tr>
<th align="left"/>
<th align="left">Pros<sub>1</sub></th>
<th align="left">Pros<sub>2</sub></th>
<th align="left">Pros<sub>3</sub></th>
<th align="left">Pros<sub>1</sub></th>
<th align="left">Pros<sub>2</sub></th>
<th align="left">Pros<sub>3</sub></th>
<th align="left">Pros<sub>1</sub></th>
<th align="left">Pros<sub>2</sub></th>
<th align="left">Pros<sub>3</sub></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Tas<sub>0</sub></td>
<td align="left">0&#x2013;10</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">0&#x2013;11</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">0&#x2013;11</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>1</sub></td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">38&#x2013;51</td>
<td align="left">38&#x2013;49</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">36&#x2013;47</td>
<td align="left">-</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>2</sub></td>
<td align="left">-</td>
<td align="left">29&#x2013;37</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">11&#x2013;19</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">11&#x2013;19</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>3</sub></td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">20&#x2013;38</td>
<td align="left">-</td>
<td align="left">39&#x2013;49</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">19&#x2013;29</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>4</sub></td>
<td align="left">10&#x2013;37</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">19&#x2013;39</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">29&#x2013;49</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>5</sub></td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">51&#x2013;69</td>
<td align="left">49&#x2013;64</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">47&#x2013;62</td>
<td align="left">-</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>6</sub></td>
<td align="left">47&#x2013;56</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">29&#x2013;38</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">29&#x2013;48</td>
</tr>
<tr>
<td align="left">Tas<sub>7</sub></td>
<td align="left">-</td>
<td align="left">67&#x2013;79</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">49&#x2013;61</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">59&#x2013;71</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>8</sub></td>
<td align="left">-</td>
<td align="left">37&#x2013;47</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">28&#x2013;43</td>
<td align="left">-</td>
<td align="left">49&#x2013;59</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>9</sub></td>
<td align="left">-</td>
<td align="left">79&#x2013;91</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">73&#x2013;85</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">71&#x2013;83</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>10</sub></td>
<td align="left">-</td>
<td align="left">91&#x2013;101</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">85&#x2013;95</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">83&#x2013;93</td>
<td align="left">-</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig id="fig-3"><label>Figure 3</label><caption><title>Comparison of makespan for case 1</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-3.png"/></fig>
<fig id="fig-4"><label>Figure 4</label><caption><title>Comparison of speedup for case 1</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-4.png"/></fig>
<fig id="fig-5"><label>Figure 5</label><caption><title>Comparison of efficiency for case 1</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-5.png"/></fig>
<fig id="fig-6"><label>Figure 6</label><caption><title>Comparison of throughput for case 1</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-6.png"/></fig>
</sec>
<sec id="s7_2"><label>7.2</label><title>Case 2</title>
<p>In this case, the tasks &#x007B;Tas<sub>1</sub>, Tas<sub>2</sub>, Tas<sub>3</sub>, Tas<sub>4</sub>, Tas<sub>5</sub>, Tas<sub>6</sub>, Tas<sub>7</sub>, Tas<sub>8</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D; are executed on three heterogeneous processors &#x007B;Pros<sub>1</sub>, Pros<sub>2</sub>, Pros<sub>3</sub>&#x007D;. The cost of executing each task on different processors is shown in <xref ref-type="table" rid="table-3">Tab. 3</xref>, [<xref ref-type="bibr" rid="ref-9">9</xref>]. The schedule obtained by ECSA and other algorithms is shown in <xref ref-type="table" rid="table-4">Tab. 4</xref>. The results obtained by the ECSA are compared with those obtained by the Whale Optimization Algorithm (WOA) [<xref ref-type="bibr" rid="ref-15">15</xref>]. Gravitational Search Algorithm (GSA) [<xref ref-type="bibr" rid="ref-16">16</xref>], and Hybrid Heuristic and Genetic (HHG) [<xref ref-type="bibr" rid="ref-17">17</xref>]. The task priority of ECSA &#x007B;Tas<sub>1</sub>, Tas<sub>6</sub>, Tas<sub>4</sub>, Tas<sub>5</sub>, Tas<sub>2</sub>, Tas<sub>3</sub>, Tas<sub>8</sub>, Tas<sub>9</sub>, Tas<sub>7</sub>, Tas<sub>10</sub>&#x007D;, task priority of WOA &#x007B;Tas<sub>1</sub>, Tas<sub>3</sub>, Tas<sub>5</sub>, Tas<sub>2</sub>, Tas<sub>4</sub>, Tas<sub>6</sub>, Tas<sub>7</sub>, Tas<sub>8</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D;, task priority of GSA &#x007B;Tas<sub>1</sub>, Tas<sub>3</sub>, Tas<sub>2</sub>, Tas<sub>6</sub>, Tas<sub>4</sub>, Tas<sub>5</sub>, Tas<sub>7</sub>, Tas<sub>8</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D;, task priority of HHG &#x007B;Tas<sub>1</sub>, Tas<sub>2</sub>, Tas<sub>6</sub>, Tas<sub>3</sub>, Tas<sub>4</sub>, Tas<sub>5</sub>, Tas<sub>8</sub>, Tas<sub>7</sub>, Tas<sub>9</sub>, Tas<sub>10</sub>&#x007D;. <xref ref-type="fig" rid="fig-7 fig-8 fig-9 fig-10">Figs. 7</xref>&#x2013;<xref ref-type="fig" rid="fig-10" >10</xref> represent the results obtained by the ECSA, WOA, GSA, and HHG in terms of makespan, speedup, efficiency, and throughput.</p>
<table-wrap id="table-3"><label>Table 3</label><caption><title>Computation cost for case 2</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Tas/Pros</th>
<th align="left">Pros<sub>1</sub></th>
<th align="left">Pros<sub>2</sub></th>
<th align="left">Pros<sub>3</sub></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Tas<sub>1</sub></td>
<td align="left">22</td>
<td align="left">21</td>
<td align="left">36</td>
</tr>
<tr>
<td align="left">Tas<sub>2</sub></td>
<td align="left">22</td>
<td align="left">18</td>
<td align="left">18</td>
</tr>
<tr>
<td align="left">Tas<sub>3</sub></td>
<td align="left">32</td>
<td align="left">27</td>
<td align="left">43</td>
</tr>
<tr>
<td align="left">Tas<sub>4</sub></td>
<td align="left">7</td>
<td align="left">10</td>
<td align="left">4</td>
</tr>
<tr>
<td align="left">Tas<sub>5</sub></td>
<td align="left">29</td>
<td align="left">27</td>
<td align="left">35</td>
</tr>
<tr>
<td align="left">Tas<sub>6</sub></td>
<td align="left">26</td>
<td align="left">17</td>
<td align="left">24</td>
</tr>
<tr>
<td align="left">Tas<sub>7</sub></td>
<td align="left">14</td>
<td align="left">25</td>
<td align="left">30</td>
</tr>
<tr>
<td align="left">Tas<sub>8</sub></td>
<td align="left">29</td>
<td align="left">23</td>
<td align="left">36</td>
</tr>
<tr>
<td align="left">Tas<sub>9</sub></td>
<td align="left">15</td>
<td align="left">21</td>
<td align="left">8</td>
</tr>
<tr>
<td align="left">Tas<sub>10</sub></td>
<td align="left">13</td>
<td align="left">16</td>
<td align="left">33</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-4"><label>Table 4</label><caption><title>Schedule obtained by ECSA and other algorithms for case 2</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left"/>
<th align="center" colspan="3">WOA</th>
<th align="center" colspan="3">GSA</th>
<th align="center" colspan="3">HHG</th>
<th align="center" colspan="3">ECSA</th>
</tr>
<tr>
<th align="left"/>
<th align="left">Pros <sub>1</sub></th>
<th align="left">Pros <sub>2</sub></th>
<th align="left">Pros <sub>3</sub></th>
<th align="left">Pros <sub>1</sub></th>
<th align="left">Pros <sub>2</sub></th>
<th align="left">Pros <sub>3</sub></th>
<th align="left">Pros <sub>1</sub></th>
<th align="left">Pros <sub>2</sub></th>
<th align="left">Pros <sub>3</sub></th>
<th align="left">Pros <sub>1</sub></th>
<th align="left">Pros <sub>2</sub></th>
<th align="left">Pros <sub>3</sub></th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Tas<sub>1</sub></td>
<td align="left">-</td>
<td align="left">0&#x2013;21</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">0&#x2013;21</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">0&#x2013;21</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">0&#x2013;21</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>2</sub></td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">38&#x2013;56</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">38&#x2013;58</td>
<td align="left">-</td>
<td align="left">21&#x2013;39</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">21&#x2013;39</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>3</sub></td>
<td align="left">-</td>
<td align="left">21&#x2013;48</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">21&#x2013;48</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">39&#x2013;66</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">39&#x2013;66</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>4</sub></td>
<td align="left">-</td>
<td align="left">48&#x2013;58</td>
<td align="left">-</td>
<td align="left">50&#x2013;57</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">50&#x2013;54</td>
<td align="left">64&#x2013;71</td>
<td align="left">-</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>5</sub></td>
<td align="left">34&#x2013;63</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">56&#x2013;91</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">54&#x2013;89</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">34&#x2013;69</td>
</tr>
<tr>
<td align="left">Tas<sub>6</sub></td>
<td align="left">-</td>
<td align="left">58&#x2013;75</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">48&#x2013;65</td>
<td align="left">-</td>
<td align="left">38&#x2013;64</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">38&#x2013;4</td>
<td align="left">-</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>7</sub></td>
<td align="left">64&#x2013;78</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">64&#x2013;78</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">66&#x2013;91</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">66&#x2013;91</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>8</sub></td>
<td align="left">-</td>
<td align="left">75&#x2013;98</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">68&#x2013;91</td>
<td align="left">-</td>
<td align="left">65&#x2013;94</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">71&#x2013;100</td>
<td align="left">-</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Tas<sub>9</sub></td>
<td align="left">86&#x2013;101</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">91&#x2013;99</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">89&#x2013;97</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">78&#x2013;86</td>
</tr>
<tr>
<td align="left">Tas<sub>10</sub></td>
<td align="left">-</td>
<td align="left">108&#x2013;124</td>
<td align="center"/>
<td align="left">-</td>
<td align="left">106&#x2013;122</td>
<td align="left">-</td>
<td align="left">104&#x2013;117</td>
<td align="left">-</td>
<td align="left">-</td>
<td align="left">100&#x2013;113</td>
<td align="left">-</td>
<td align="left">-</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig id="fig-7"><label>Figure 7</label><caption><title>Comparison of makespan for case 2</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-7.png"/></fig>
<fig id="fig-8"><label>Figure 8</label><caption><title>Comparison of speedup for case 2</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-8.png"/></fig>
<fig id="fig-9"><label>Figure 9</label><caption><title>Comparison of efficiency for case 2</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-9.png"/></fig>
<fig id="fig-10"><label>Figure 10</label><caption><title>Comparison of throughput for case 2</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_32215-fig-10.png"/></fig>
</sec>
<sec id="s7_3"><label>7.3</label><title>Case 3</title>
<p>To analyze the behavior of the ECSA, we consider four cases with M&#x2009;&#x003D;&#x2009;2, 3, 4, and 8 processors. The number of tasks is 20, 30, 50, and 70 tasks in the first, second, third, and fourth cases (N&#x2009;&#x003D;&#x2009;20, 30, 50, and 70). The communication cost between the tasks and the computation cost of each task on different processors are randomly generated from 1 to 20, and 1 to 5, respectively. We run our proposed algorithm one more time. The results obtained by the proposed algorithm are shown in <xref ref-type="table" rid="table-5">Tab. 5</xref>.</p>
<table-wrap id="table-5"><label>Table 5</label><caption><title>The results obtained by ECSA for case 3</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Number of tasks</th>
<th align="left">Makespan</th>
<th align="left">Speedup</th>
<th align="left">Efficiency</th>
<th align="left">Throughput</th>
<th align="left">Number of processors</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" rowspan="4">20</td>
<td align="left">28</td>
<td align="left">1.392</td>
<td align="left">0.696</td>
<td align="left">0.714</td>
<td align="left">2</td>
</tr>
<tr>
<td align="left">26</td>
<td align="left">1.5</td>
<td align="left">0.5</td>
<td align="left">0.769</td>
<td align="left">3</td>
</tr>
<tr>
<td align="left">28</td>
<td align="left">1.392</td>
<td align="left">0.348</td>
<td align="left">0.714</td>
<td align="left">4</td>
</tr>
<tr>
<td align="left">33</td>
<td align="left">1.181</td>
<td align="left">0.147</td>
<td align="left">0.606</td>
<td align="left">8</td>
</tr>
<tr>
<td align="left" rowspan="4">30</td>
<td align="left">33</td>
<td align="left">1.575</td>
<td align="left">0.787</td>
<td align="left">0.909</td>
<td align="left">2</td>
</tr>
<tr>
<td align="left">32</td>
<td align="left">1.625</td>
<td align="left">0.541</td>
<td align="left">0.937</td>
<td align="left">3</td>
</tr>
<tr>
<td align="left">34</td>
<td align="left">1.529</td>
<td align="left">0.382</td>
<td align="left">0.882</td>
<td align="left">4</td>
</tr>
<tr>
<td align="left">35</td>
<td align="left">1.485</td>
<td align="left">0.185</td>
<td align="left">0.857</td>
<td align="left">8</td>
</tr>
<tr>
<td align="left" rowspan="4">50</td>
<td align="left">60</td>
<td align="left">1.5</td>
<td align="left">0.75</td>
<td align="left">0.833</td>
<td align="left">2</td>
</tr>
<tr>
<td align="left">62</td>
<td align="left">1.451</td>
<td align="left">0.483</td>
<td align="left">0.806</td>
<td align="left">3</td>
</tr>
<tr>
<td align="left">67</td>
<td align="left">1.343</td>
<td align="left">0.335</td>
<td align="left">0.746</td>
<td align="left">4</td>
</tr>
<tr>
<td align="left">74</td>
<td align="left">1.216</td>
<td align="left">0.152</td>
<td align="left">0.675</td>
<td align="left">8</td>
</tr>
<tr>
<td align="left" rowspan="4">70</td>
<td align="left">87</td>
<td align="left">1.436</td>
<td align="left">0.718</td>
<td align="left">0.804</td>
<td align="left">2</td>
</tr>
<tr>
<td align="left">86</td>
<td align="left">1.453</td>
<td align="left">0.484</td>
<td align="left">0.795</td>
<td align="left">3</td>
</tr>
<tr>
<td align="left">94</td>
<td align="left">1.329</td>
<td align="left">0.332</td>
<td align="left">0.744</td>
<td align="left">4</td>
</tr>
<tr>
<td align="left">101</td>
<td align="left">1.237</td>
<td align="left">0.154</td>
<td align="left">0.693</td>
<td align="left">8</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s7_4"><label>7.4</label><title>Discussion</title>
<p>According to the results in <xref ref-type="fig" rid="fig-3 fig-4 fig-5 fig-6">Figs. 3&#x2013;6</xref>, it is found that the makespan of the ECSA is reduced by (7.9&#x0025;) and (2.1&#x0025;) about NGA and GA respectively. The speedup of the ECSA is improved by (8.5&#x0025;) and (2.1&#x0025;) for NGA and GA respectively. The efficiency of the ECSA is improved by (8.5&#x0025;) and (2.1&#x0025;) for NGA and GA respectively. The throughput of the ECSA is improved by (9.2&#x0025;) and (2.6&#x0025;) about NGA and GA respectively. According to the results in <xref ref-type="fig" rid="fig-7 fig-8 fig-9 fig-10">Figs. 7&#x2013;10</xref>, it is found that the makespan of the ECSA is reduced by (8.8&#x0025;), (7.7&#x0025;), (3.4&#x0025;) about WOA, GSA, HHG, respectively. The speedup of the ECSA is improved by (9.7&#x0025;), (7.9&#x0025;), and (3.5&#x0025;) about WOA, GSA, and HHG, respectively. The efficiency of the ECSA is improved by (9.6&#x0025;), (7.8&#x0025;), and (3.4&#x0025;) about WOA, GSA, and HHG, respectively. The throughput of the ECSA is improved by (10&#x0025;), (8.6&#x0025;), and (3.5&#x0025;) about WOA, GSA, and HHG, respectively.</p>
</sec>
</sec>
<sec id="s8"><label>8</label><title>Conclusion and Future Work</title>
<p>To get near-optimal results for the problem of scheduling tasks in a cloud computing environment, efficient strategies for the optimal mapping of the tasks are required. In this research, we propose a novel efficient approach based on the cooperation search algorithm called the Efficient Cooperation Search Algorithm (ECSA) to solve the problem of scheduling tasks in a cloud computing environment. The system is made up of a limited number of fully connected heterogeneous processors. The comparison of the algorithm has been made against the algorithms in terms of makespan, speedup, efficiency, and throughput. The comparative analysis explains that the proposed algorithm performance is significantly better in all cases, it reduces the makespan by (7.9&#x0025;), (2.1&#x0025;), (8.8&#x0025;), (7.7&#x0025;), (3.4&#x0025;) about New Genetic Algorithm (NGA), Genetic Algorithm (GA), Whale Optimization Algorithm (WOA), Gravitational Search Algorithm (GSA), and Hybrid Heuristic and Genetic (HHG) respectively according to makespan. In our future work, we will develop an efficient coronavirus herd immunity optimizer algorithm for optimizing scheduling tasks in cloud computing.</p>
</sec>
</body>
<back>
<fn-group>
<fn fn-type="other"><p><bold>Funding Statement:</bold> The authors received no specific funding for this study.</p></fn>
<fn fn-type="conflict"><p><bold>Conflicts of Interest:</bold> The authors declare that they have no conflicts of interest to report regarding the present study.</p></fn>
</fn-group>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>K.</given-names> <surname>Dubey</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Kumar</surname></string-name> and <string-name><given-names>S. C.</given-names> <surname>Sharma</surname></string-name></person-group>, &#x201C;<article-title>Modified HEFT algorithm for task scheduling in cloud environment</article-title>,&#x201D; <source>Procedia Computer Science</source>, vol. <volume>125</volume>, pp. <fpage>725</fpage>&#x2013;<lpage>732</lpage>, <year>2018</year>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>X.</given-names> <surname>Chen</surname></string-name>, <string-name><given-names>L.</given-names> <surname>Cheng</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Liu</surname></string-name>, <string-name><given-names>Q.</given-names> <surname>Liu</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Liu</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>A woa-based optimization approach for task scheduling in cloud computing systems</article-title>,&#x201D; <source>IEEE Systems Journal</source>, vol. <volume>14</volume>, no. <issue>3</issue>, pp. <fpage>3117</fpage>&#x2013;<lpage>3128</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>T.</given-names> <surname>Bezdan</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Zivkovic</surname></string-name>, <string-name><given-names>E.</given-names> <surname>Tuba</surname></string-name>, <string-name><given-names>I.</given-names> <surname>Strumberger</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Bacanin</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>Multiobjective task scheduling in cloud computing environment by hybridized bat algorithm</article-title>,&#x201D; <source>Journal of Intelligent &#x0026; Fuzzy Systems</source>, vol. <volume>42</volume>, no. <issue>1</issue>, pp. <fpage>411</fpage>&#x2013;<lpage>423</lpage>, <year>2022</year>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A. I.</given-names> <surname>Awad</surname></string-name>, <string-name><given-names>N. A.</given-names> <surname>El-Hefnawy</surname></string-name> and <string-name><given-names>H. M.</given-names> <surname>Abdel_kader</surname></string-name></person-group>, &#x201C;<article-title>Enhanced particle swarm optimization for task scheduling in cloud computing environments</article-title>,&#x201D; <source>Procedia Computer Science</source>, vol. <volume>65</volume>, pp. <fpage>920</fpage>&#x2013;<lpage>929</lpage>, <year>2015</year>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>L.</given-names> <surname>Abualigah</surname></string-name> and <string-name><given-names>M.</given-names> <surname>Alkhrabsheh</surname></string-name></person-group>, &#x201C;<article-title>Amended hybrid multi-verse optimizer with genetic algorithm for solving task scheduling problem in cloud computing</article-title>,&#x201D; <source>Journal of Supercomputing</source>, vol. <volume>78</volume>, no. <issue>1</issue>, pp. <fpage>740</fpage>&#x2013;<lpage>765</lpage>, <year>2022</year>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Velliangiri</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Karthikeyan</surname></string-name>, <string-name><given-names>V. M.</given-names> <surname>Arul Xavier</surname></string-name> and <string-name><given-names>D.</given-names> <surname>Baswaraj</surname></string-name></person-group>, &#x201C;<article-title>Hybrid electro search with genetic algorithm for task scheduling in cloud computing</article-title>,&#x201D; <source>Ain Shams Engineering Journal</source>, vol. <volume>12</volume>, no. <issue>1</issue>, pp. <fpage>631</fpage>&#x2013;<lpage>639</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A.</given-names> <surname>Mishra</surname></string-name>, <string-name><given-names>M. N.</given-names> <surname>Sahoo</surname></string-name> and <string-name><given-names>A.</given-names> <surname>Satpathy</surname></string-name></person-group>, &#x201C;<article-title>H3CSA: A makespan aware task scheduling technique for cloud environments</article-title>,&#x201D; <source>Transactions on Emerging Telecommunications Technologies</source>, vol. <volume>32</volume>, no. <issue>10</issue>, pp. <fpage>1</fpage>&#x2013;<lpage>20</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A. Y.</given-names> <surname>Hamed</surname></string-name> and <string-name><given-names>M. H.</given-names> <surname>Alkinani</surname></string-name></person-group>, &#x201C;<article-title>Task scheduling optimization in cloud computing based on genetic algorithms</article-title>,&#x201D; <source>Computers, Materials &#x0026; Continua</source>, vol. <volume>69</volume>, no. <issue>3</issue>, pp. <fpage>3289</fpage>&#x2013;<lpage>3301</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A.</given-names> <surname>Younes</surname></string-name>, <string-name><given-names>A.</given-names> <surname>BenSalah</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Farag</surname></string-name>, <string-name><given-names>F. A.</given-names> <surname>Alghamdi</surname></string-name> and <string-name><given-names>U. A.</given-names> <surname>Badawi</surname></string-name></person-group>, &#x201C;<article-title>Task scheduling algorithm for heterogeneous multi processing computing systems</article-title>,&#x201D; <source>Journal of Theoretical and Applied Information Technology</source>, vol. <volume>97</volume>, no. <issue>12</issue>, pp. <fpage>3477</fpage>&#x2013;<lpage>3487</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Z. -K.</given-names> <surname>Feng</surname></string-name>, <string-name><given-names>W. -J.</given-names> <surname>Niu</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Liu</surname></string-name></person-group>, &#x201C;<article-title>Cooperation search algorithm: A novel metaheuristic evolutionary intelligence algorithm for numerical optimization and engineering optimization problems</article-title>,&#x201D; <source>Applied Soft Computing Journal</source>, vol. <volume>98</volume>, pp. <fpage>1</fpage>&#x2013;<lpage>27</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>I.</given-names> <surname>Dubey</surname></string-name> and <string-name><given-names>M.</given-names> <surname>Gupta</surname></string-name></person-group>, &#x201C;<article-title>Uniform mutation and SPV rule based optimized PSO algorithm for TSP problem</article-title>,&#x201D; in <conf-name>Proc. of the 4th Int. Conf. on Electronics and Communication Systems</conf-name>, <conf-loc>Coimbatore, India</conf-loc>, pp. <fpage>168</fpage>&#x2013;<lpage>172</lpage>, <year>2017</year>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>L.</given-names> <surname>Wang</surname></string-name>, <string-name><given-names>Q.</given-names> <surname>Pan</surname></string-name> and <string-name><given-names>F. M.</given-names> <surname>Tasgetiren</surname></string-name></person-group>, &#x201C;<article-title>A hybrid harmony search algorithm for the blocking permutation flow shop scheduling problem</article-title>,&#x201D; <source>Computers &#x0026; Industrial Engineering</source>, vol. <volume>61</volume>, no. <issue>1</issue>, pp. <fpage>76</fpage>&#x2013;<lpage>83</lpage>, <year>2011</year>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Nabi</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Ibrahim</surname></string-name> and <string-name><given-names>J. M.</given-names> <surname>Jimenez</surname></string-name></person-group>, &#x201C;<article-title>DRALBA: Dynamic and resource aware load balanced scheduling approach for cloud computing</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>9</volume>, pp. <fpage>61283</fpage>&#x2013;<lpage>61297</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>B.</given-names> <surname>Keshanchi</surname></string-name>, <string-name><given-names>A.</given-names> <surname>Souri</surname></string-name> and <string-name><given-names>N.</given-names> <surname>Navimipour</surname></string-name></person-group>, &#x201C;<article-title>An improved genetic algorithm for task scheduling in the cloud environments using the priority queues: Formal verification, simulation, and statistical testing</article-title>,&#x201D; <source>Journal of Systems and Software</source>, vol. <volume>124</volume>, pp. <fpage>1</fpage>&#x2013;<lpage>21</lpage>, <year>2017</year>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S. R.</given-names> <surname>Thennarasu</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Selvam</surname></string-name> and <string-name><given-names>K.</given-names> <surname>Srihari</surname></string-name></person-group>, &#x201C;<article-title>A new whale optimizer for workflow scheduling in cloud computing environment</article-title>,&#x201D; <source>Journal of Ambient Intelligence Humanized Computing</source>, vol. <volume>12</volume>, no. <issue>3</issue>, pp. <fpage>3807</fpage>&#x2013;<lpage>3814</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>T.</given-names> <surname>Biswas</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Kuila</surname></string-name>, <string-name><given-names>A. K.</given-names> <surname>Ray</surname></string-name> and <string-name><given-names>M.</given-names> <surname>Sarkar</surname></string-name></person-group>, &#x201C;<article-title>Gravitational search algorithm based novel workflow scheduling for heterogeneous computing systems</article-title>,&#x201D; <source>Simulation Modelling Practice and Theory</source>, vol. <volume>96</volume>, pp. <fpage>1</fpage>&#x2013;<lpage>21</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>M.</given-names> <surname>Sulaiman</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Halim</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Lebbah</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Waqas</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Tu</surname></string-name></person-group>, &#x201C;<article-title>An evolutionary computing-based efficient hybrid task scheduling approach for heterogeneous computing environment</article-title>,&#x201D; <source>Journal of Grid Computing</source>, vol. <volume>19</volume>, no. <issue>1</issue>, pp. <fpage>1</fpage>&#x2013;<lpage>31</lpage>, <year>2021</year>.</mixed-citation></ref>
</ref-list>
</back>
</article>