1. Introduction
Service-Oriented Computing (SOC) emphasizes the design of reusable, modular, and loosely connected software services. These services perform specialized business operations and can be integrated to create sophisticated software systems. SOC principles are used in SOA software architecture. The SOA computing paradigm emphasizes services in application and solution development [
1]. HTTP and XML are used to access web services (WS). Common SOA implementations allow apps to communicate via a standard interface. Different sectors use WS to share data between platforms [
2]. Web service composition (WSC) involves combining numerous WS to produce a more complicated, multitasking service. It involves merging two or more services with different capabilities to create a more complex workflow to achieve a goal.
SOA and WS can be used to design an IoT service-oriented architecture that integrates devices into a linked ecosystem. So, it can help firms construct intelligent systems that analyze data in real-time, automate processes, and improve decision-making. The rapidly increasing Internet of Things (IoT) will affect Smart Cities [
1] Cities worldwide are using IoT-enabled devices and technology to improve efficiency, lower costs, and improve quality of life. IoT-based sensors monitor traffic and alter traffic lights, while smart grids optimize energy distribution and decrease waste. As IoT technology advances, more innovative applications will make cities more sustainable, habitable, and connected [
1] Smart Cities: IoT and Machine Learning for Data-centric Smart Environments, Complex & Intelligent Systems, 2023. IoT is expected to be used in smart enterprises, building and home automation, smart cities, healthcare, automotive, and other domains [
3]. WSC in commercial applications is dynamic, requiring a flexible architecture to meet user needs and company standards. The edge–cloud continuum allows data to be processed closer to the source (edge) while using the cloud for larger computing duties. This hybrid method boosts IoT application response times and Quality of Service (QoS) [
3].
IoT Service Composition is another name for the new paradigm that has emerged due to recent developments with the incorporation of WSC into IoT devices (IoTSC). According to [
4], some approaches, such as improved genetic algorithm and Petri net approaches, fail to meet certain criteria and overlook fundamental aspects, such as real-time constraints, monitoring, and fault tolerance.
According to [
5], the number of services is increasing, and the existing issues are insufficient to handle large-scale problems. Zhou and Yao proposed a multi-population parallel self-adaptive differential artificial bee colony (MPsaDABC) algorithm with NP-hard complexity, which had drawbacks due to the subjectivity of the weighted sum [
6]. Author Bhushan proposed a hybrid method, Hybrid Particle Swarm Optimization (HPSO), a combination of PSO and FOA, to achieve the optimal execution time. However, the proposed method drops in performance when population time exceeds 800 [
7].
In addition to the non-functional service characteristics stated in the previous paragraph, such as service unavailability, poor performance, etc., the functional attribute of service also presents problems that have not been solved. The selected and available provider cannot provide the user with the correct service specified in their request. One study [
8] mentions the existing model and approaches for verifying the correctness of a single service and statically composed services. Incorrect service selection violates the Service Level Agreement (SLA) and makes the user dissatisfied, both of which are SLA violations. Invoking the incorrect service could cause a composition to be halted due to a mismatch in parameters. There is no correlation between the output/input that was requested and the output/input that was provided by the service [
9]. As a result, the continuity of the system is affected. One study [
4] claimed the adaptation of service to provide continuous service to the user, but the researchers overlooked this criterion. The problem statement can be summarized as follows:
Lack of robust implementation in IoT for efficient service selection from a large-scale repository, considering the total completion time.
Lack of dynamism and continuity in selecting the appropriate service during WSC.
Considering these problems, such as high computation time while selecting a service from a large-scale repository and service termination due to choosing the incorrect service, we, therefore, put forward this research with the following objectives as listed below:
To propose a bio-inspired hybrid model to reduce high computation time in selecting the services from a cloud-based large-scale WS repository.
To select the correct services from the service repository based on user requirements for WSC.
To evaluate the proposed bio-inspired hybrid model in a real-time environment.
While the existing literature offers valuable insights into WSC, there remains a need for methods that not only focus on computational efficiency but also ensure high availability and reliability in service selection. This gap underscores the significance of our Improved Eagle Strategy (IES), which aims to fill these voids. The edge–cloud continuum is a vital framework that enhances the capabilities of cloud computing and IoT by enabling efficient data processing and service delivery. It is crucial to integrate this concept into our paper to provide a comprehensive understanding of how these technologies interact and support each other in real-world applications.
The paper’s structure is as follows:
Section 2 provides an overview of related works in the field. In
Section 3, we introduce the “Improved Eagle Strategy”.
Section 4 delves into the case study, focusing on the “Smart Toilet” system.
Section 5 presents the methodology used for the testing and validation of our approach. Finally, in
Section 6, we conclude and summarize key findings.
2. Related Works
Recent studies in IoT service compositions have primarily focused on enhancing execution time, scalability, and cost-effectiveness. However, aspects like service availability and reliability are also gaining attention. For instance, the use of Hybrid Particle Swarm Optimization (HPSO) demonstrates advancements in optimizing service compositions in IoT environments. These studies provide a backdrop against which the IES model’s contributions can be appreciated.
Service-oriented architecture (SOA) has gained more popularity due to the up-and-coming technologies provided to users.
Figure 1 shows the roadmap of SOA, which consists of three (3) significant functionalities. Firstly, the infrastructure of the WS is at the bottom of the pyramid. Secondly, service composition and service management are positioned at the top of the pyramid [
9]. The IoT will be implemented at the WSC’s second layer of SOA. The goal of architectures based on SOA is to enable the ability to utilize and reuse loosely coupled IoT services at the middleware layer to reduce the number of problems associated with system integration. A system architecture compliant with the SOA architectural pattern gives programmers and business process designers the ability to dynamically add, query, and use instances of existing modular software in the IoT context.
One of the most important fields of SOA research is the technology of WS. WS is primarily used in a distributed and heterogeneous environment to exchange and reuse software components. The web service SOA framework is shown in
Figure 2. The structure contains three main functions, namely (1) Service Broker, (2) Service Requester, and (3) Service Provider [
10]. The fundamental SOA is not primarily an architecture; it is also a relationship between three distinct types of participants: Find, Bind, and Publish.
The principal function of the SOA system is to manage the interactions among services. Integration is guaranteed by WS standards that promote the extensive utilization and enhanced reusability of programs due to their enforcement of WS schemas [
11]. Interoperability, dependability, availability, accessibility, security, efficiency, durability, extensibility, flexibility, auditability, operability, deployability, and modifiability are identified as essential characteristics in the design of Service-Oriented Architectures (SOAs). WS facilitates the reutilization and dissemination of shared logic among diverse clients, encompassing mobile, desktop, and web applications [
3]. WS frequently utilizes eXtensible Markup Language (XML) for communication with customers and other WS. Alternative methods and formats, such as JavaScript Object Notation (JSON), Representational State Transfer (REST), and Simple Object Access Protocol (SOAP), are also extensively utilized for this purpose.
A limited number of standardized technologies have been utilized to implement the application framework in Web Services (WS), including but not limited to XML, SOAP, WSDL, UDDI, and other analogous technologies [
12,
13,
14]. WS are categorized into three distinct types: (1) static, (2) semi-dynamic, and (3) dynamic [
13]. A static WS is created during the design phase, while dynamic composition occurs at runtime. Consequently, Dynamic Web Service Composition (DWSC) is more appropriate for commercial applications characterized by constantly evolving corporate laws and user demands [
8]. To address significant complexity, a set of approaches for WS operations is being pursued for complete or partial automation via WSC [
15].
According to [
9,
16], WSC has three main phases: discovery, selection, and composition. After discovering a service, the next step is selecting the best one to fit specific tasks or business needs. Finally, the chosen service is used in the composition phase to create a workflow that integrates multiple WS [
16]. The IoT refers to a network of objects embedded with sensors, software, and technologies that connect and share data over the Internet. This enables two-way communication between various “things” globally. Examples of IoT applications at the commercial level include retail, industrial IoT, smart utilities, and medical services [
16,
17,
18]. According to Gubbi, Buyya, Marusic, & Palaniswami in the IoT forum, the IoT is formed with three (3) layers: Application, Transportation, and Processor [
19]. Based on existing works and the conceptual IoT framework,
Figure 3 illustrates the critical building of IoT Infrastructure.
Aoudia, Benharzallah, and Kahloul identify certain obstacles in the IoT, including heterogeneity and the swift proliferation of devices [
4]. They propose the implementation of an IoT monitoring system to guarantee fault tolerance and preserve system integrity. Despite the acknowledged expenses associated with service composition in IoT, numerous concerns persist unresolved. The majority of investigations have concentrated on resource accessibility and QoS elements such as reliability, resilience, and performance. The objective is dual: (1) to guarantee continuous service for users, and (2) to improve user engagement with their environment. Despite the execution of comparison research, no definitive answers have been identified due to insufficient implementation.
Service Level Agreements (SLAs) are contractual agreements between clients and cloud service providers to guarantee the fulfillment of quality-of-service standards. Asghari, Rahmani, and Javadi observed that service-oriented applications support the preservation of QoS and operational characteristics of cloud services [
20]. Nevertheless, the dynamic and various characteristics of IoT render the integration of smart devices to satisfy user requirements problematic. This complicates the proper management of QoS components and SLAs by present cloud services.
Zhou and Yao presented the multi-population parallel self-adaptive differential artificial bee colony (MPsaDABC) algorithm, designed to enhance large-scale service composition in cloud manufacturing [
6]. This algorithm improved the conventional method for addressing the CMfg service optimal selection (CCSOS) problem, a challenging NP-hard problem. Although the algorithm enhanced performance, it reduced the multi-objective CCSOS issue to a single-objective format by a basic additive weighting system, introducing subjectivity in the weighting variables.
In another study [
21], researchers analyzed and compared different approaches to IoT service composition. They evaluated existing IoT service structures based on relevant criteria and highlighted their similarities and differences. Their findings identified key areas for further research to enhance service composition methodologies in IoT. Although most studies focused on reducing execution time, improving scalability, and lowering costs, availability, and reliability were still consistently addressed.
To find the best search, an optimization technique called Hybrid Particle Swarm Optimization (HPSO) combines PSO with FOA [
7]. Based on the fitness value of service, the FOA can accelerate convergence. When the services are less than 800, the proposed method’s efficiency and execution time are better. Execution times are longer when there are more than 800 services.
Reference [
22] suggested using a genetic algorithm based on skylines to solve the composition problem, reduce SLA violations, and compare the proposed approach’s computation time to the conventional genetic algorithm. However, the suggested strategy is incompatible with how the service is delivered. As a result, composition errors could happen.
For each generation after local heuristic selection creates the initial HGA population, elitism is applied to maintain superior solutions. The suggested technique outperforms the basic genetic algorithm and the fruit fly optimization algorithm in optimality, computing time, convergence speed, and feasibility rate. The strategy aims to improve implementation in dispersed cloud environments with numerous objectives, restrictions, and service correlations while addressing cloud service requirements [
23].
GPSO was proposed by Faruk, Vara Prasad, and Divya. Using this method with others helped academics measure convergence’s fury. The GPSO outperforms existing methods in execution time and quality of service performance. However, higher static mutation probabilities may hinder convergence and increase implementation time [
24]. Naseri and Jafari Navimipour improved the cloud services composition problem using an agent-based framework and PSO [
25]. Comparisons with other algorithms show that the hybrid PSO method discovers the right composite services and succeeds. Unfortunately, the proposed method requires additional resources to succeed.
A multi-population differential Artificial Bee Colony (ABC) method for large-scale cloud manufacturing service composition optimization was described in [
6]. Multiple parallel subpopulations evolved with diverse mutation strategies from differential evolution to disrupt foraging bee supplies. Subpopulation-specific mutation parameters were changed. The authors stated this strategy outperformed hybrid and single-population algorithms in the literature. A subjective additive weighting method simplified the multi-objective problem to a single-objective problem, according to current research.
Reference [
5] presented the dynamic ant-colony genetic hybrid algorithm to optimize massive cloud service composition. This method used an iterative adjustment threshold to optimize algorithm characteristics and parameters in the later phases of the search process, fine-tuning the hybrid algorithm’s operations. This optimization saves computational resources and efficiently finds the optimal option. Therefore, the DAAGA algorithm’s performance on large CSCO problems can be greatly enhanced. Since the NP problem remains unsolved, future optimization and modification may include changing operational phases and parameters.
Gavvala, Jatoth, Gangadharan, and Buyya introduced the Eagle Strategy with the Whale Optimization Algorithm (ESWOA) to balance exploration and exploitation [
26]. This strategy balances exploration and exploitation to avoid late or premature convergence. Experimental results show that ESWOA provides optimal global solutions faster than other recent algorithms and many service repositories to compose services from with minimal cloud-to-cloud connections.
Ghobaei-Arani, Rahmanian, Aslanpour, and Dashti developed a cuckoo-based service composition method to assess cloud service QoS [
27]. Testing showed that the proposed strategy reduced costs and reaction time compared to competitors, two things that delay QoS improvement. Both availability and provider dependability QoS criteria increased. Our technique also considers multi-cloud and quick convergence. However, load balance and fault tolerance are issues.
Table 1 is summarized based on the existing literature from the respective author. As summarized, the hybrid methods of PSO and FOA have been shown to improve computation time and choose the correct service [
7,
25]. However, both methods lead to high computation time when a large service scale is involved. Some hybrid methods have low computation time, as proposed by [
22,
23], which have similarities in the type of method, such as the Genetic Algorithm (GA). The method proposed by the author [
22] used the Skyline method, in which the limitation is incompatibility. Meanwhile, the method proposed by [
23], with the combination of FOA, only supports a single cloud environment. Similarly, the author [
26] faced the same restriction issue in a distributed cloud environment.
The identified constraints within the distributed cloud environment, specifically the lack of consideration for certain parameters, will be addressed by refining the IES methodology to prioritize and enhance QoS attributes—non-functional attributes of WS—ensuring a more responsive and user-centric service selection process.
In summary, our review of the existing literature reveals a concentrated effort on specific aspects of IoT service composition. The IES model presented in this study extends these efforts by providing a more balanced approach, focusing on both computational efficiency and service reliability, thus contributing novel insights to the field.
3. Improved Eagle Strategy
This study introduces the Improved Eagle Strategy (IES), a novel hybrid model designed to optimize the WS selection process in large-scale cloud-based environments. Unlike existing methodologies, the IES model excels in minimizing computation time while ensuring accurate service selection based on user requirements. Its unique approach evaluates service performance in real-time scenarios, setting it apart from conventional models. We employ NetLogo simulations to demonstrate the IES model’s superior time efficiency in service selection compared to other methods. Additionally, our model’s application through a web dashboard system underscores its ability to handle both non-functional and functional service attributes effectively. The results validate that the IES model not only expedites service selection but also enhances the overall user experience in WSC, marking a significant advancement in cloud computing and IoT domains. The overall progression of the Improved Eagle strategy is depicted in
Figure 4.
3.1. Calculate the Semantic Similarities
Building upon the foundational concepts introduced, we now delve into the specific algorithms and processes that underpin the IES model. The IES is developed in a few steps by determining the semantic similarity between the WS. To perform the semantic similarities calculation, the repository of the WS should be prepared. The WS-DREAM repository (Team, WS DREAM. Retrieved from
http://wsdream.github.io/dataset/wsdream_dataset1.html/ accessed on 5 September 2024) used an open dataset that contained services from different countries and was collected from real-world WS. As this dataset has been widely used in research, the validation would be much more accurate for comparing the outcome. The benefit of using this dataset is that WS Dream makes the dataset and source code available to the public for WS research.
The ping method was first used to check the responsiveness and availability of a WS. Ping functions as a computer network administration tool that assesses the duration required for a signal to traverse from its origin point to its target destination. The response time of QoS will serve as a metric to evaluate the effectiveness of the WS. Response time, which is the overall amount of time it takes to execute a WS, is frequently measured in milliseconds (ms). Both availability and response time will be predicted or observed when the WS is evaluated. Ping’s response is shown below:
As shown in the algorithm above, all available services were marked “Read Complete”. In contrast, unavailable services were marked “Error” in the Status column, and the round-trip response time from the Ping method was recorded in the Elapsed Time column. The method names of all available services were retrieved. Many method names can be found in a single WS.
The document that holds the Web Service Description Language (WSDL), as referenced in [
10], underwent parsing to extract the method name, as well as the input and output parameters, for each service. To gauge the semantic similarities among the services, the Wordnet 3.0 algorithm was employed. The only thing that the similarity measures were used on were the names of the operations and methods. The method names were extracted from the WSDL document and compared using the Wordnet algorithm to determine their similarity scores. Because the clustering of WS requires measuring the distance between different services, calculating semantic similarities was a key stage in the process. A more in-depth analysis and a comparison of other techniques for similarity measurement and clustering are not included in the scope of this work.
WordNet is a conceptually organized dictionary of English words described by [
28]. This dictionary follows a hierarchical structure for its organization. At Princeton, a group led by Miller is responsible for developing Wordnet [
29]. If there are two words, namely, w1 and w2, the algorithm used to determine semantic similarities is sim (w1, w2). The algorithm employed to assess semantic similarities between two words, denoted as w1 and w2, is represented as sim (w1, w2). The resulting value falls within the range of 0 to 1, where a value of 0 signifies no similarity whatsoever, and a value of 1 indicates a perfect or exact similarity.
3.2. Calculate the Service Based on Method Names
The second set of activities involved clustering or grouping the services into categories according to the names of their methods. The clustering method was used to narrow the search space to make the process of choosing a service more manageable. That is done to the advantage of the benefits offered by the traditional ES. The proposed method could select the service in less time than it would have taken using a more prominent search space because it narrowed the search. Clustering is the process of grouping data into groups based on their similarity. According to Mora, Santillan-Perez, & Bravo (2016), the primary objective of clustering is to classify similar kinds of data into the same cluster when those data types are comparable in terms of precise metric similarities [
30,
31].
The K-Means algorithm significantly emphasized the value of distance to determine the length from one WS to another. According to the research in [
32], Manhattan distance results are superior to Minkowski and Euclidean distances. The amount of space that separates two points, as measured by the Manhattan distance function, is equal to the sum of the absolute differences in their Cartesian coordinates. It is usually determined by adding the x-coordinate difference to the y-coordinate difference and subtracting it from 100. Accordingly, the Manhattan distance, denoted by d(
x,
y), can be defined in the following way [
32,
33]. The algorithm for calculating the Manhattan distance is shown in
Table 2 below.
Clustering generally analyses and categorizes available data based on criteria, with the same samples in one category finding the most differences with samples in other types. Clustering is typically considered an unsupervised method because connection and subsequent grouping are examined without prior knowledge of the class label patterns. WS clustering is all about selecting and extracting the features of WS and discovering the commonalities between them to construct groups or classes based on those qualities [
32].
The K-means clustering method is one of the most extensively used algorithms for clustering implementation. That is primarily attributable to its performing exceptionally well for large datasets [
33,
34]. The K-means clustering method is one of the most popular algorithms for clustering [
32]. K-means is a method that measures the distance between each point in a dataset and the centroids of clusters to locate data objects that are similar to one another and assign them to the cluster that is closest to them.
The K-Means algorithm is based on the idea that k clusters are generated in such a way that the centroids of their clusters are closer than the centroids of other clusters. The algorithm’s operation begins with choosing k points as the centroids. After choosing the k points, all points are assigned to the nearest centroid, forming k clusters. After that, a centroid is calculated by taking the average of each cluster’s points. The mean vector comprises these centroids, each vector field equaling a cluster centroid. Finally, the new centroid creates additional clusters due to this process. The process will be completed if the centroids do not change.
The proposed method used the K-Means clustering technique to achieve its desired results [
35]. The Python programming language is used to determine the K value. According to the findings of [
31], text-based clustering methods such as K-Means produce better results regarding both accuracy and F-measure. F-Measure, also known as F-Score, is a metric used to evaluate the quality of clustering results. It measures the clustering’s accuracy, combining Precision (
PC) and Recall (
RE) into a single metric. Precision measures how many of the items assigned to a cluster are members of that cluster. Recall measures how many of the things that belong to a cluster are correctly assigned to that cluster. The F-measure ranges between 0 and 1, with 1 indicating perfect clustering results. A high F-measure suggests that the clustering is accurate, and the clusters are well-defined [
36].
RE and
PC are dimensions that are frequently used in the field of text mining. The
RE and
PC values are presented in the following formula.
where
xu,v is the number of services of class
u in cluster
v,
xv is the number of services of cluster
v, and
xu is the number of services of class
u.
where
PC(
u,
v) is the
PC of services of class
u in cluster
v,
RE(
u,
v) is the
RE of services of class
u in cluster
v, and
FM for all clusters is calculated at (9):
Figure 5 illustrates how WS clustering takes place. Clustering web services involves dividing the total number of web services in a collection into the right number of groups or clusters based on some similarity metric. In this research, Wordnet 3.0 was used to calculate semantic similarities.
The implementation of our proposed algorithm as a WS was the next step, and it was accomplished with the help of Microsoft Visual Studio, which is also where the service selection took place. Developing a Windows workflow composition for 24 Smart Toilet microcontrollers was the final stage of the development phase. This was accomplished by utilizing the Windows Communication Foundation (WCF).
The advantage of using the Eagle Strategy is discussed, where the Eagle Strategy outperforms the standard algorithms like the “Genetic Algorithm”, “Whale Optimization Algorithm”, “Discrete Guided Artificial Bee Colony”, “Hybrid Genetic Algorithm”, and “Greedy Randomized Adaptive Search Procedure” according to [
26]. The disadvantage is its constraint in the distributed cloud environment without considering the parameter. The IES will select the service from the service repository with few conditions, considering the QoS attribute of services and selecting the correct service, as shown in
Figure 6 below.
The IES will be able to select the WS from a large-scale distributed cloud-based repository according to the users’ requirements. The proposed method accomplishes the first objective: select the service with a lesser response time than WOA and ES. As per related works, the Eagle Strategy is proven to select the service with lower response time compared to another bio-inspired method. Therefore, the advantage and improvement of the technique is the ability to select services based on user requirements and the services’ response time is fully utilized. The first objective is to emphasize the QoS attributes, which are non-functional attributes of WS. Functional attributes, focusing on the second objective, are then used to select the correct service based on user requirements. During the process of selecting a WS, the IES emphasizes both the functional and non-functional aspects of the service.
While the output and input sections describe the abstract message format for the solicited request and response, the method name will be a WS functionality. It is necessary to retrieve the capabilities of the WS to accommodate the preferences of user requests. This is done so that the system can identify the appropriate service for the user and then provide that service to them. Because of this, the Service Level Agreement (SLA) will be improved because of the users’ dissatisfaction [
7]. When it comes to service composition, most currently available methods focus solely on quality-of-service qualities, resulting in incompatibility between the various services. This not only violates the criteria of the users, but also decreases user satisfaction.
3.3. Classification High Fitness and Low Fitness Value
Apart from that, the non-functional attribute, which is the QoS attribute of the service, is focused on selecting the available services and ensuring a high response time for the services. The IES additionally chooses the services with a high fitness value during the service selection process. The low-fitness value services are least prioritized as they have lower response times to achieve high performance during the service invocation. The fitness value is determined by the QoS attributes of services, followed by the threshold value calculation. Once the threshold value is determined, the services that have a higher fitness value compared to the threshold value are determined to have a high fitness value.
On the other hand, the services with lesser value than the threshold value are determined to be low-fitness value services. The threshold value is determined by calculating the average value of services. The equation below shows the formula to calculate the fitness value for each service, where
β is the fitness value,
λ is the QoS of the attribute value, and a, b, and c are the weightage based on percentage. Weightage is the value set by the user based on their requirement.
Equation (11) below shows the formula to calculate the threshold value of the available services, where
τ represents the threshold value and
β represents the fitness value.
The overall structure of the IES, as shown in
Figure 7, demonstrates how the services are grouped and classified according to the names of the methods and their respective fitness values. In addition, the cloud-based environment serves as the storage location for the services. The functions are described in the flowchart above, and IoT devices call upon the set of flowcharts. Each circle represents a different workflow feature; some of the services invoke other WS stored in the cloud repository.
Figure 8 depicts a Venn diagram featuring variables that elucidate the IES formula and the retrieval of services from the repository. The notation ∈∂ signifies services within the repository, while ∈(∂(
α)) pertains to the accessible web service. ∈(∂.
α(
c)) denotes services clustered based on method name similarity. The fitness value of a web service,
β, is a measure of its performance, which is reflected in its response time. Ultimately, services are categorized into high and low fitness values utilizing an if-else statement that compares them with the threshold value,
τ.
Rule 1:
α = available service, when ping value returns value 1, read complete
Rule 2:
c = clustered services from the list of available services
Rule 3:
β = fitness value, the service response time, calculated based on the ping value.
Rule 4:
τ = threshold value is the mean value of fitness value for each cluster.
3.4. Service Selection and Dynamic Composition
While the above algorithmic details provide a deep dive into the IES’s functionality, the essence lies in its ability to dynamically adapt to changing service demands, ensuring optimal performance for end-users.
Figure 9 illustrates dynamic WS selection. The IES automatically selects a service; if any fail during the invocation process, the substitution technique replaces the current workflow service [
13,
37]. The symbol X in the diagram at the send email service illustration indicates the service failed to respond. Therefore, the IES will dynamically select the other service available with a high response value from the clustered service repository without human interaction. This is to maintain the dynamism and continuity of the workflow.
Figure 10 shows the dynamic flowchart for WS selection. Dynamic service substitution is performed under two distinct conditions. First, it occurs when a service is unavailable. Second, substitution is initiated when the response time of a service falls below the specified threshold value.
Table 3 shows the algorithm for the IES. The IES surpasses other bio-inspired optimization techniques such as PSO and Artificial Bee Colony (ABC) through its unique combination of real-time adaptability and reduced computational complexity in large-scale cloud environments. While traditional methods like PSO excel in convergence speed, they suffer from high computation times when dealing with large datasets, and techniques like ABC face limitations in handling multi-objective service selection, especially in dynamic IoT environments. In contrast, the IES leverages a hybrid approach that dynamically adapts to varying user requirements and optimizes both functional and non-functional attributes. This not only reduces overall computation time but also enhances service accuracy in large-scale, distributed environments. The clustering-based reduction of search space further distinguishes the IES, making it significantly more efficient and scalable than traditional methods, particularly in cloud and IoT ecosystems.
4. Case Study
The IoT is the foundation of the Smart Toilet system, which was developed to collect real-time data from sensors installed in toilet facilities to improve the efficiency with which toilet cleaning resources and peripherals are sourced.
Figure 11 shows the overall architecture of a Smart Toilet, where the sensors are connected to the IoT device to get information and prompt the WS.
There are three phases of Smart Toilet systems, namely (1) the Sensory Phase, (2) the Cloud Management Phase, and lastly, (3) Mobile Application and Web Development [
38]. The sensory phase is where the IoT programming and sensor installation occurs.
Figure 12 illustrates the electrical diagram of the Smart Toilet system, where the sensors are connected to the IoT device to get information and prompt the WS.
Referring to
Figure 12, TTGO is a brand of development boards based on the ESP32 microcontroller. TTGO boards typically include an ESP32 microcontroller, additional components such as an OLED display, a battery management circuit, and various sensors and communication modules. The specific features of each board vary depending on the model, but all of them are designed to be easy to use and provide a convenient platform for developing IoT projects.
TTGO is a powerful, low-cost, low-power system-on-a-chip (SoC) microcontroller with integrated Wi-Fi and Bluetooth capabilities [
39]. It is designed for the IoT and other wireless communication applications. Microcontrollers use traditional methods to work on low-dimensional structured sensor data (for example, temperature and humidity). They make simple inferences at the edge of their processing [
40].
Within the Smart Toilet system, the IES model plays a pivotal role in enhancing the software-driven capabilities of the IoT architecture. By integrating the IES model, we ensure robust system security and a user-responsive service by efficiently selecting optimal WS based on predefined QoS attributes. This focus on software optimization allows for predictive maintenance and effective resource management, contributing to the system’s overall performance and reliability.
In the sensory phase of the Smart Toilet system, sensors collect real-time data essential for service optimization. The IES model utilizes this sensory data to enhance the decision-making process for service selection. By analyzing the data in the context of user requirements and service response times, the IES model ensures the selection of the most efficient services. This software-focused approach allows for a more intelligent and responsive Smart Toilet system, highlighting the practical application of the IES model in a real-world scenario.
The next phase is cloud management. The raw data gathered from IoT devices, which are also known as “real-time data”, are stored in Open Innovation Platform (OIP) cloud telemetry storage [
13]. The IR sensor captures the distance data and the date and time the distance is captured and transmitted via the TTGO module into cloud storage. MQTT or HTTP is the available protocol to transmit the data via the network connection. Cloud storage is used not only to store data but also to process the stored data for end-user use.
Every IR sensor installed is differentiated by “device ID”, programmed in the TTGO module. Based on the device ID, the data frequency can be analyzed. OIP cloud storage also provides the device’s dashboard to ease the process.
Figure 13 illustrates the installation of IoT devices in each toilet.
When the data is processed as meaningful information, the system extends to provide the toilet availability for the end user, such as giving the toilet occupancy status. A mobile app was developed to show meaningful data status to the end user. The mobile application uses the Application Programming Interface (API) to POST and GET the data from cloud storage. POST is used to send data, while GET retrieves data.
Two different applications were developed to monitor the Smart Toilet system. Firstly, the mobile application.
Figure 14 shows a screenshot of the mobile application developed. A mobile application was developed to authenticate to the user the toilet occupancy status. Additionally, the mobile application allows users to rate each cubicle based on toilet cleanliness by simply tapping on the star symbols to rate.
Another application is the web application. The web application was developed for facility management to manage the peripherals and view the janitor scheduling system. Also, the overall diagram of faculty and the occupancy status is shown on the main screen.
Figure 15 shows a screenshot of the web dashboard.
To summarize, the Improved Eagle Strategy represents a significant advancement in service selection within distributed cloud environments. Its unique attributes, namely responsiveness and reliability, position it as a valuable tool in the evolving landscape of WS. The Improved Eagle Strategy (IES) builds upon traditional bio-inspired optimization methods, such as PSO and ABC, by integrating a dynamic service selection mechanism that optimizes both functional and non-functional attributes in real-time IoT environments. Unlike PSO, which focuses solely on convergence speed, or ABC, which is often constrained by limited multi-objective service selection efficacy, IES excels in both speed and adaptability. Its unique clustering-based reduction of search space further decreases computation time, positioning it as a novel and scalable solution for cloud-based IoT systems.
6. Conclusions
This research introduced the Improved Eagle Strategy (IES), a novel hybrid method for optimizing service selection in cloud-based environments, with promising results regarding both functional and non-functional requirements. While the approach demonstrates superiority over traditional bio-inspired methods, its potential extends beyond the immediate findings.
Future applications of the IES could explore its integration into other dynamic and critical IoT-driven environments, such as healthcare, smart cities, and autonomous systems. By adapting the model to sector-specific requirements, the IES could address unique challenges, such as real-time decision-making in life-critical applications or efficient resource management in large-scale IoT ecosystems.
Additionally, future advancements in this research could focus on incorporating machine learning techniques to enhance the adaptability of the IES in handling more complex, large-scale service compositions. Exploring the integration of reinforcement learning or other bio-inspired algorithms may further improve its accuracy and speed in varying scenarios.
Security enhancements within the IES framework are also critical, given the growing concerns regarding the data privacy and integrity of IoT networks. Developing a more robust, secure infrastructure will ensure that the method is sustainable in environments requiring stringent data protection.
In conclusion, the contributions of this research lay a solid foundation for further advancements, positioning the IES as a flexible and adaptive tool with broad applicability across industries. The continuous development of this approach could significantly contribute to the evolution of IoT services, facilitating the implementation of more efficient, secure, and scalable service-oriented architectures.