The Industry 4.0 era has enabled the concept of Matrix Production Systems, where products can be manufactured on demand by dynamically reconfiguring independent modules on the shop floor. This reconfiguration process, however, is not trivial, since certain possibilities incur much higher reconfiguration costs than others. To tackle this challenge, researchers have employed optimization techniques for identifying the best possible reconfiguration solutions. However, these approaches do not consider the self-adaptive nature of a manufacturing system, i.e., the need to re-optimize configurations when the order queue changes. To address this limitation, this paper focuses on the self-adaptive reconfiguration of Matrix Production System modules. Specifically, it proposes a genetic algorithm-based approach for self-adaptive reconfiguration, introducing the use of a solution archive mechanism. This approach is compared to an integer linear programming model, using a dataset that features dynamic updates to the queue of orders. Results show that the genetic algorithm-based approach generally has lower execution times than integer linear programming, though it does not converge to the global optimum.
The manufacturing industry is currently facing a need for more dynamic modes of production. To meet this demand, this work presents an architecture that flexibly connects products, processes, and resources. This work also proposes stateful capability-skill ontology that allows abstract production steps to be dynamically matched to machines on the shop floor. Unlike previous work, state information is directly encoded into the ontology's structure, which simplifies the capability-skill matching process. With an architectural analysis of the work-in-progress approach, its suitability and utility for scheduling tasks is assessed. The initial results show that the proposed approach can provide efficient, reliable, and interoperable scheduling for various scenarios, whereas resource usage and retroactive capability decomposition are identified as potential weaknesses.
Case study responses are a frequent assignment type in engineering degrees, where they aim to prepare students for professional practice. With the goal of supporting the teaching of engineering case responses, this study compares the use of rhetorical strategies in low-graded and high-graded case study responses. Using a corpus of 20 high-graded and 20 low-graded case responses, the article investigates quantitative and qualitative differences in use of rhetorical strategies. Faculty feedback on assignments was analysed to identify rhetorical features valued by instructors, and good alignment was found between features valued by instructors and the rhetorical strategies identified as important by our analysis. Findings were that low-graded assignments neglected to use key rhetorical strategies and used them less expertly. In contrast, high-graded assignments were skilful in using rhetorical strategies such as establishing the purpose and importance of the case, using course concepts and the findings of their analysis to support recommendations, discussing options, and providing reasons for recommendations to build strong arguments.
Recent advances in the manufacturing sector - including edge-to-cloud continuum, machine learning, and digitalization - can enable smart manufacturing solutions, such as control optimization and predictive maintenance. One challenge in new system architectures is the efficient resource management under changing conditions while meeting process requirements, such as latency, when deploying software services. To address this, we propose an approach for self-adaptive service deployment that increases the resilience of smart manufacturing systems. We combine self-adaptation principles with run-time models - that describe the system in the form of the standardized Asset Administration Shell - to enable flexible software architectures for manufacturing. The proposed solution comprises the continuous adaptation of the service deployment in response to system changes, such as resource exhaustion or failure, to ensure an optimized operation. An evaluation of an example manufacturing use case shows that the proposed solution leads to lower execution latency and continuation of production in situations with low resources, e.g., through failures, compared to less flexible deployment approaches.
DevOps, which refers to a set of practices for streamlining the development and operations of software companies, is becoming increasingly popular as businesses strive to adopt a loosely coupled architecture that supports frequent software delivery. As a result, DevOps is also gaining traction in other domains and involved architectures, including robotics, though research in this area is still lacking. To address this gap, this paper investigates how to adapt key DevOps principles from the domain of software engineering to the domain of robotics. In order to demonstrate the feasibility of this in practice, an industrial robotics case study is conducted. The results indicate that the adoption of these principles is also beneficial for robotic software architectures, though general DevOps approaches may require some adaptation to match the existing infrastructure.
With the increased digitization in the manufacturing sector, cognitive computing entails great potential to improve services and production. This is also referred to as cognitive manufacturing. The general idea is to simulate human cognitive processes - with the aim to improve decision making - by using machine learning (ML) to leverage the increased amount of data. However, the seamless adoption of cognitive computing and ML techniques to industrial automation systems on all abstraction levels is currently impeded by different challenges. Prominent blocking points are the heterogeneity of the systems, which impedes uniform data access and ML integration, and the lack of support for managing various ML life cycle phases. In this work, we propose a framework to manage data and ML life cycles in industrial automation systems. The framework comprises an architecture for the flexible integration of ML components (from component to cloud level) and their adaptive management (including retraining and updates). We address three phases of ML explicitly: pre-deployment, deployment, and post-deployment. We present first results and experiences of applying the framework to an industrial use case and discuss its future potential towards enabling cognitive manufacturing.
With the rise of Industry 4.0, businesses are increasingly turning to Machine Learning to leverage data for improving quality and productivity. However, one open challenge when embracing Machine Learning in this context is the integration of cloud infrastructures, as well as the heterogeneity of data, interfaces, and protocols in the production environment. To address this, we are developing a framework that aims to simplify the adoption of Machine Learning techniques for heterogeneous industrial automation systems. One of the core features of this framework is the ability to handle data about production devices – a scenario that is naturally suited to the use of Asset Administration Shells. However, the implementation of a system that uses Asset Administration Shells comes with its own set of challenges, such as the abstraction of details from users and the representation of device topologies. Thus, this paper introduces the concepts and implementation of a Metadata Manager component in the aforementioned framework that uses Asset Administration Shells as its basis. We further examine the Metadata Manager’s current structure with unit testing, derive planned extensions, and discuss future directions from the Industry 4.0 perspective.
Standardizing data is crucial for preserving and exchanging scientific information. In particular, recording the context in which data were created ensures that information remains findable, accessible, interoperable, and reusable. Here, we introduce the concept of self-reporting data assets (SRDAs), which preserve data and contextual information. SRDAs are an abstract concept, which requires a suitable data format for implementation. Four promising data formats or languages are popularly used to represent data in pharma: JCAMP-DX, JSON, AnIML, and, more recently, the Allotrope Data Format (ADF). Here, we evaluate these four options in common use cases within the pharmaceutical industry using multiple criteria. The evaluation shows that ADF is the most suitable format for the implementation of SRDAs.
With the rapid growth of social networks, their analysis plays an increasingly important role in marketing and research. This reveals the need for efficient and effective techniques for doing so. In certain problem domains (e.g. marketing and education), detecting clusters of users with similar characteristics allows for services to be targeted to specific communities. While a number of approaches have been proposed in the literature to this end, they suffer from scalability issues when analysing larger or more densely connected social networks. To cope with this scalability problem, a Genetic Algorithm (GA)-based approach for social network analysis is proposed in this paper, supported by a graph database to store the static relationships between the nodes, thus eliminating the computational cost of repeatedly searching the network. Thus, the novelty of this work is in the combination of GA-based approach with a graph database, which store data more effectively, which allows for global optimisation to take place. Additionally, the main advantage of the proposed approach is that it does not require a priori knowledge regarding the social network when performing the analysis. The GA-based approach is shown to have the best performance regarding the identification of communities, though also requiring higher execution times.
Service oriented computing has emerged as a popular software development paradigm. In the era of Cloud computing, Big data, the Internet of Things (IoT) and Smart Cities, Web service composition has been extensively researched. Web service composition aims to find the best way of combining services, which accomplish simple tasks, into a more sophisticated composite application. Evolutionary computation lends itself to tackling the problem of Web service composition, since it allows for the optimisation of the overall Quality of Service attributes of the composite solution. In order to gain a better understanding of the different evolutionary computation-based approaches applied to this problem, a number of literature surveys have been written in this area. However, these surveys do not focus on the technical aspects of using evolutionary computation to this end, instead focusing on the general application of methods. Thus, the focus of this survey is on analysing existing works from a technical perspective, paying particular attention to the following key decisions when choosing an evolutionary computation-based approach for Web service composition: a) the representation of candidates, b) the fitness evaluation strategy, c) the handling of correctness constraints, d) the choice of evolutionary algorithms and operators. Based on these analyses, current trends, limitations,and future research paths are identified.
Cloud computing allows software application or service providers to purchase computational resources for hosting software applications or services. There is an increasing number of cloud service vendors, each offering different types of computational resources, such as virtual machines (VMs), in distinct physical locations, meaning that the chosen computational resources directly affect the cost and performance of the deployed applications. Given the increasing number of cloud providers and types of computational resources, the process of selecting the most suitable resources to meet multiple quality of service (QoS) requirements becomes quite challenging. Thus, the aim of this paper is to propose an efficient and effective approach to the problem of application deployment in multi-cloud with the objective of minimizing overall deployment costs and response time. This is accomplished by employing a hybrid NSGA-II approach with a local search method. Experimental evaluations with benchmark datasets demonstrate that our proposed hybrid approach outperforms NSGA-II and SPEA2.
Service-oriented architecture (SOA) has been widely employed in the field of software engineering, since it encourages attributes such as modularity and code reusability across different applications. Web service composition, where atomic services that accomplish simple tasks are combined into an application that fulfils a more complex function, is one popular application of SOA. Existing composition works focus on building functional and quality-optimised applications. A subset of these works use multi-objective evolutionary computing techniques to produce a Pareto front of compositions, though they assume that the basic structure of the composition workflow is already known. In our recent work, we removed this assumption by combining NSGA-II with a solution representation that allows for different workflow structures to be investigated. However, the multi-objective nature of the problem made it difficult to apply local search to further improve the results. In this paper we hybridise NSGA-II with MOEA/D, which allows the problem to be decomposed into multiple single-objective subproblems where a simple form of local search can be applied. Experiment results show that the use of local search improves the quality of the fronts produced by the hybrid approach for a number of composition tasks.
Automated Web service composition is one of the holy grails of service-oriented computing, since it allows users to create an application simply by specifying the inputs the resulting application should require, the outputs it should produce, and any constraints it should observe. The composition problem has been handled using a variety of techniques, from AI planning to optimisation algorithms, however no work so far has focused on handling multiple composition facets simultaneously, producing solutions that: (1) are fully functional (i.e. fully executable, with semantically-matched inputs and outputs), (2) employ a variety of composition constructs (e.g. sequential, parallel, and choice constructs), and (3) are optimised according to non-functional Quality of Service (QoS) measurements. The overall goal of this thesis is to propose hybrid Web service composition approaches that consider elements from all three facets described above when generating solutions. These approaches combine elements of AI planning and of Evolutionary Computation to allow for the creation of compositions that meet all of these requirements. Firstly, this thesis proposes two novel approaches for Web service composition with direct representations. The first one is a tree-based approach where the leaf nodes are the atomic services included in the composition and the inner nodes are the structural constructs that shape the composition workflow. The second one is a graph-based approach where the atomic services are the vertices and the edges connecting them form the composition workflow. The two approaches are compared to determine which is most suitable to the QoS-aware fully automated Web service composition problem. Secondly, this thesis proposes novel sequence-based approaches for Web service composition that use an indirect representation, i.e. they encode solutions as sequences of services. By representing solutions in this way, it is possible to initialise and evolve them without having to enforce their functional correctness. Then, before evaluating the fitness of each solution, a decoding algorithm is used to transform the sequence into the corresponding composition. The decoding algorithm builds the workflow using the ordering in the sequence as closely as possible when selecting the next service to be added, while at the same time generating a functionally correct structure. Thirdly, this thesis treats Web service composition as a multi-objective problem, generating a set of trade-off solutions the user can choose from. More specifically, it proposes multi-objective approaches to fully automated Web service composition, which means that conflicting QoS attributes are independently optimised using a variety of representations that support flexible workflow structures. Additionally, a multi-objective and fully automated memetic approach that uses a local search operator to further improve the quality of solutions is proposed. The following major contributions have been made in this thesis. Firstly, two approaches for Web service composition with direct representations were proposed. When the choice construct is not considered, the graph-based approach produces solutions of higher quality than those of the tree-based approach, but the opposite is true when the choice construct is included. Secondly, indirect representation approaches for Web service composition were proposed. These approaches perform well and can produce solutions with better quality than those found by the graph-based approach. Finally, we propose multi-objective approaches to fully automated service composition, employing different problem representations and a local search operator. The multi-objective approaches using the sequence-based representation were found to produce solutions with better overall quality.
A Web service can be thought of as a software module designed to accomplish specific tasks over the Internet. Web services are very popular, as they encourage code reuse as opposed to re-implementing already existing functionality. The process of combining multiple Web services is known as Web service composition. Previous attempts at automatically generating compositions have made use of genetic programming to optimize compositions, or introduced databases to keep track of relationships between services. This paper presents an approach that combines these two ideas, generating new compositions based on information stored in a graph database and then optimising their quality using genetic programming. Experiments were conducted comparing the performance of the newly proposed approach against that of existing works. Results show that the new approach executes faster than the previously proposed works, though it does not always reach the same solution quality as the compositions produced by them. Despite this, the experiments demonstrate that the fundamental idea of combining graph databases and genetic programming for Web service composition is feasible and a promising area of investigation.
Web services have become increasingly popular in recent years, given their modular nature and reusability potential. A particularly promising application is in Web service composition, where multiple individual services with specific functionalities are composed to accomplish a more complex task. Researchers have proposed evolutionary computing techniques for creating compositions that are not only feasible, but also have the best possible Quality of Service (QoS). Some of these works employed multi-objective techniques to tackle the optimisation of compositions with conflicting QoS attributes, but they are not fully automated, i.e. they assume the composition workflow structure is already known. This assumption is often not satisfied, as the workflow is often unknown. This paper proposes a genetic programming-based method to automatically generate service compositions in a multi-objective context, based on a novel fragmented tree representation. An evaluation using benchmark datasets is carried out, comparing existing methods adapted to the multi-objective composition problem. Results show that the fragmented method has the lowest execution time overall. In terms of quality, its Pareto fronts are equivalent to those of one of the approaches but inferior to those of the other. More importantly, this work provides a foundation for future investigation of multi-objective fully automated service composition.
The concept of Service-Oriented Architecture, where individual services can be combined to accomplish more complex tasks, provides a flexible and reusable approach to application development. Their composition can be performed manually, however doing so may prove to be challenging if many service alternatives with differing qualities are available. Evolutionary Computation (EC) techniques have been employed successfully to tackle this problem, especially Genetic Programming (GP), since it is capable of encoding conditional constraints on the composition’s execution paths. While compositions can naturally be represented as Directed Acyclic Graphs (DAGs), GP needs to encode candidates as trees, which may pose conversion difficulties. To address that, this work proposes an extension to an existing EC approach that represents solutions directly as DAGs. The tree-based and extended graph-based composition approaches are compared, showing significant gains in execution time when using graphs, sometimes up to two orders of magnitude. The quality levels of the solutions produced, however, are somewhat higher for the tree-based approach. This, in addition to a convergence test, shows that the genetic operators employed by the graph-based approach can be potentially improved. Nevertheless, the extended graph-based approach is shown to be capable of handling compositions with multiple conditional constraints, which is not possible when using the tree-based approach.
The concept of Service-Oriented Architecture, where individual services can be combined to accomplish more complex tasks, provides a flexible and reusable approach to application development. Their composition can be performed manually, however doing so may prove to be challenging if many service alternatives with differing qualities are available. Evolutionary Computation (EC) techniques have been employed successfully to tackle this problem, especially Genetic Programming (GP), since it is capable of encoding conditional constraints on the composition's execution paths. While compositions can naturally be represented as Directed Acyclic Graphs (DAGs), GP needs to encode candidates as trees, which may pose conversion difficulties. To address that, this work proposes a Quality of Service (QoS)-aware EC composition approach that represents solutions directly as DAGs. This approach extends a previously proposed DAG representation by allowing it to also encode conditional constructs, thus producing solutions with multiple possible execution paths. The tree-based and graph-based composition approaches are compared, showing significant gains in execution time when using graphs.
Automated Web service composition, which refers to the creation of a complex application from pre-existing building blocks (Web services), has been an active research topic in the past years. The advantage of having an automated composition system is that it allows users to create new applications simply by providing the required parameters, instead of having to manually assemble the services. Existing approaches to automated composition rely on planning techniques or evolutionary computing (EC) to modify and optimise composition solutions directly in their tree/graph form, a complex process that requires several constraints to be considered before each alteration. To improve the search efficiency and simplify the checking of constraints, this work proposes an indirect Particle Swarm Optimisation (PSO)-based approach. The key idea of the indirect approach is to optimise a service queue which is then decoded into a composition solution by using a planning algorithm. This approach is compared to a previously proposed graph-based direct representation method, and experiment results show that the indirect representation can lead to a greater (or equivalent) quality while requiring a lower execution time. The analysis conducted shows that this is due to the design of the algorithms used for building and evaluating the fitness of solutions.
Web service composition is a popular area of investigation, since it encourages code reuse as opposed to re-implementing already existing functionality modules. Performing such compositions manually can be quite time-consuming, since the functionality of each service included in a solution must be fulfilled, while at the same time selecting candidates with the best possible quality of service attributes. This work proposes a memetic algorithm that can perform Web service composition in a fully automated manner, optimising a sequence of services that is then decoded into the final solution. The key advantage of this representation is that it separates the quality optimisation technique from the enforcement of correctness constraints, thus simplifying the overall composition process and preventing solutions from being overly constrained. While this indirect composition approach has been investigated earlier, the previous representation relied on weights for establishing a service sequence and used PSO as the optimisation technique. In this work, on the other hand, sequences are directly represented using a vector of services, which reduces the overall search space. Additionally, the memetic algorithm employed in this work is better at exploring solutions within promising areas of the search space. Experiments were conducted comparing the memetic approach with the previously proposed PSO, with two key findings. Firstly, the new representation reduces the overall execution time while maintaining the original solution quality. Secondly, the use of the memetic local search improves the overall quality of solutions, though it may incur longer execution times.
Web services, which can be described as functionality modules invoked over a network as part of a larger application are often used in software development. Instead of occasionally incorporating some of these services in an application, they can be thought of as fundamental building blocks that are combined in a process known as Web service composition. Manually creating compositions from a large number of candidate services is very time consuming, and developing techniques for achieving this objective in an automated manner becomes an active research field. One promising group of techniques encompasses evolutionary computing, which can effectively tackle the large search spaces characteristic of the composition problem. Therefore, this paper proposes the use of genetic programming for Web service composition, investigating three variations to ensure the creation of functionally correct solutions that are also optimised according to their quality of service. A variety of comparisons are carried out between these variations and two particle swarm optimisation approaches, with results showing that there is likely a trade-off between execution time and the quality of solutions when employing genetic programming and particle swarm optimisation. Even though genetic programming has a higher execution time for most datasets, the results indicate that it scales better than particle swarm optimisation.